#!/usr/bin/env python
#-*- coding: utf-8 -*-
from pysnmp.entity.rfc3413.oneliner import cmdgen
def cbFun(sendRequestHandle, errorIndication, errorStatus, errorIndex, varBinds, cbCtx):
print varBinds
def main():
ip = '127.0.0.1'
cmdGen = cmdgen.CommandGenerator()
errorIndication, errorStatus, errorIndex, varBinds = cmdGen.nextCmd(
cmdgen.CommunityData('mymypub')
cmdgen.UdpTransportTarget((ip, 161)),
'1.3.6.1.2.1.17.7.1.2.2.1.2')
#varBinds have about 200 elements
print varBinds
cmdGen = cmdgen.AsynCommandGenerator()
cmdGen.asyncNextCmd(
cmdgen.CommunityData('mymypub'),
cmdgen.UdpTransportTarget((ip, 161)),
((1,3,6,1,2,1,17,7,1,2,2,1,2),),
(cbFun, ip))
cmdGen.snmpEngine.transportDispatcher.runDispatcher()
#varBinds have 1 element
if __name__ == '__main__':
main()
发电机中的所有元素。但我在AsyncCommandGenerator中只有一个元素。我怎么才能把它们都弄到手?在
要执行另一个GETNEXT,cbFun()应该通过返回True来请求它。否则,AsyncCommandGenerator将不执行下一个GETNEXT。在
见relevant example
相关问题 更多 >
编程相关推荐