コード例 #1
0
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
コード例 #2
0
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
コード例 #3
0
                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