import sys sys.path.append('/V100R001C00B040/msp/software/packages/pysnmp-4.2.5/') sys.path.append('/V100R001C00B040/msp/software/packages/pycrypto-2.6.1/') sys.path.append('/V100R001C00B040/msp/software/packages/pyasn1') sys.path.append('/V100R001C00B040/msp/software/packages/futures-2.1.4/') sys.path.append('/V100R001C00B040/msp/software/packages/APScheduler-2.0.3/') import logging import time import threading from msg.sigma.manager.snmplib import Snmp from concurrent import futures from apscheduler.scheduler import Scheduler as APScheduler from pysnmp.entity import config from pysnmp.entity.rfc3413.oneliner import cmdgen def cbFun(sendRequestHandle, errorIndication, errorStatus, errorIndex, varBinds, cbCtx): if errorIndication: print errorIndication return if errorStatus: print('%s at %s' % \ (errorStatus.prettyPrint(), errorIndex and varBindTable[-1][int(errorIndex)-1] or '?') ) return print varBinds for oid, val in varBinds: if val is None: print(oid.prettyPrint()) else: print('%s = %s' % (oid.prettyPrint(), val.prettyPrint())) cmdGen = cmdgen.AsynCommandGenerator() cmdGen.getCmd( cmdgen.UsmUserData('root', 'Work@7*24', 'Work@7*24',config.usmHMACSHAAuthProtocol, config.usmAesCfb128Protocol), cmdgen.UdpTransportTarget(('1.1.0.107', 161)), ( cmdgen.MibVariable('SNMPv2-MIB', 'sysDescr', 0), ), (cbFun, None) ) print 'send before rundispatcher' cmdGen.snmpEngine.transportDispatcher.runDispatcher() print 'send after rundispatcher' a=raw_input()