def sentEventTask(config, testSuite): option = config['option'] myHandler = ComHandler.comHandler(config['dataCollector'], config['appServer'], config['user'], config['password']) if option != "CheckOnly": if testSuite.method == 'snmptrap': for case in testSuite.testcases: logging.debug(case.parseEvent) returnC = os.system(case.parseEvent) else: if testSuite.method == 'netflow': myHandler.udpClient(port=2055) else: myHandler.udpClient() for case in testSuite.testcases: if testSuite.method == 'netflow': realMsg = GenerateNetFlowData.getNetFlowPacket( case.parseEvent) else: realMsg = case.parseEvent.decode() myHandler.sendEvent(realMsg) logging.debug(realMsg) myHandler.udpClientClose() finalResult = None if option != "SendOnly": if 'sleep' in config: sleepTime = float(config['sleep']) * 60 else: sleepTime = 120.0 time.sleep(sleepTime) keyMap = testSuite.getKeyMap() queryString = 'eventType IN (' + keyMap[ 'eventType'] + ') AND reptDevIpAddr IN (' + keyMap['reporter'] + ')' inXml = createQuery.CreateQueryXML(queryString) myHandler.getEvent("POST", xml=inXml) param = parsingQueryResult.XMLParsingQueryResult(myHandler.xml, check=True) finalResult = compareTestResult.runCompareResult( config, testSuite, param) return finalResult
def runLogDiscovery(config, testSuite): option = config['option'] myHandler = ComHandler.comHandler(config['dataCollector'], config['appServer'], config['user'], config['password']) myHandler.udpClient() totalParam = [] accessIps = [] for testcase in testSuite.testcases: accessIps.append(testcase.reporter) myHandler.sendEvent(testcase.discoverEvent) logging.debug(testcase.discoverEvent) myHandler.udpClientClose() finalResult = None if option != "SendOnly": #get deviceType typeQuery = 'config/deviceType' myHandler.getEvent("GET", urlString=typeQuery) deviceTypes = parsingDeviceType(myHandler.xml) time.sleep(120) queryString = 'config/device' myHandler.getEvent("GET", urlString=queryString) deviceXML = myHandler.xml queryString = 'config/application' myHandler.getEvent("GET", urlString=queryString) applicationXML = myHandler.xml param = parsingLogDiscoveryResult(deviceXML, applicationXML, accessIps) for item in param: for type in deviceTypes: if item['deviceType'] == type['type']: item['model'] = type['model'] item['vendor'] = type['vendor'] finalResult = compareTestResult.runCompareResult( config, testSuite, param) return finalResult
time.sleep(120) for i in range(0, int(case.repeatCount)): for j in range(0, len(case.events)): myHandler.sendEvent(case.events[j].incidentMsg) logging.debug(case.events[j].incidentMsg.decode()) time.sleep(float(case.repeatInterval)) myHandler.udpClientClose() finalResult = None if option != "SendOnly": if 'sleep' in config: sleepTime = float(config['sleep']) * 60 else: sleepTime = 120.0 time.sleep(sleepTime) keyMap = testSuite.getKeyMap() queryString = 'phEventCategory=1 AND (eventType IN (' + keyMap[ 'eventType'] + ') AND incidentRptIp IN (' + keyMap[ 'reporter'] + '))' inXml = createQuery.CreateQueryXML(queryString) myHandler.getEvent("POST", xml=inXml) param = parsingQueryResult.XMLParsingQueryResult(myHandler.xml) finalResult = compareTestResult.runCompareResult( config, testSuite, param) return finalResult