当我试图加载CISCO-RTTMON-MIB时,我在PySNMP构建器中一直遇到这个错误。下面的代码适用于我迄今为止尝试过的所有其他mib,但是这个mib遇到了问题。这也是我第一次尝试遍历整个表(rttMonStats),所以我可能做错了。以下是我所做的:
我下载了版本2列here:http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=en&mibName=CISCO-RTTMON-MIB下的所有文件
那些标记为“非思科MIB”的,我在网上的其他地方找到了一个搜索“下载MIB嫒u NAME”。我通过构建pysnmp mib运行了其中的每一个,如下所示:
build-pysnmp-mib MIB_NAME.my > MIB_NAME.py.
然后我将所有*.py文件复制到/opt/appname/mibs/
这是相关的定义snmpcommands.py公司名称:
^{pr2}$我把它叫做:
>>>import snmpcommands
>>>snmpcommands.walk('community', 'ip.add.ress', 'CISCO-RTTMON-MIB', 'rttMonStats', '0.0.0.0')
但是,我得到的是:
>>> snmpcommands.walk('community', 'ip.add.ress', 'CISCO-RTTMON-MIB', 'rttMonStats', '0.0.0.0')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "snmpcommands.py", line 57, in walk
mibBuilder.loadModules()
File "/usr/lib/python2.6/site-packages/pysnmp-4.2.4-py2.6.egg/pysnmp/smi/builder.py", line 251, in loadModules
'MIB module \"%s\" load error: %s' % (modPath, sys.exc_info()[1])
pysnmp.smi.error.SmiError: MIB module "/opt/appname/mibs/CISCO-RTTMON-MIB.py" load error: ConstraintsIntersection(ConstraintsIntersection(ConstraintsIntersection(ConstraintsIntersection(), ValueSizeConstraint(0, 65535)), ValueSizeConstraint(0, 255)), ValueSizeConstraint(1, 64)) failed at: "ValueSizeConstraint(1, 64) failed at: """ at SnmpAdminString
我对PySNMP非常陌生,所以我猜问题是它期望snmpadmin中有一个从SNMP-FRAMEWORK-MIB中提取的值,但它是空的。我只是不知道怎么解决它。在
看起来在CISCO-RTTMON上有一个空字符串作为snmpadmin(“”)初始值设定项-米布.py. 这似乎违反了snmpadmin约束,最终导致了异常。所以我要给CISCO-RTTMON打电话-米布.py对于空的SnmpAdminString初始值设定项,请使用兼容值(1-64个八位字节)替换它们,或者只删除空的初始值设定项(例如,使其看起来像snmpadmin())。在
相关问题 更多 >
编程相关推荐