再会,
我正在尝试使用 pysnmp 中的mib2dev.py
工具为 snmpsim 生成模拟器。我不断得到一个ValueError: Empty module name
,不知道为什么。我确保我拥有最新的 pysnmp、pycrypt 和 snmpsim。我在mac上运行。
所需的软件包是使用 easy_install 安装的。我正在使用 brew 的 python 2.7.8。我已经删除了所有软件包和 python,然后重新安装了它们。那没有帮助。
我确实查看了这个堆栈溢出问题,但他们得到了一个不同的错误。
此 MIB 取自此处。我无法显示我的实际 mib,但它会产生与这个小 mib 相同的错误。
我对代理进行编码没有问题。目前我只能找到纯标量或纯表代理的示例。如果您知道一些很好的资源以及使用 pysnmp 构建代理的示例,那就太棒了。
MIB:
MY-MIB DEFINITIONS ::= BEGIN
IMPORTS
OBJECT-TYPE, Integer32, NOTIFICATION-TYPE, enterprises
FROM SNMPv2-SMI
;
myCompany OBJECT IDENTIFIER ::= {enterprises 42}
testCount OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "A sample count of something."
::= {myCompany 1}
testDescription OBJECT-TYPE
SYNTAX OCTET STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION "A description of something"
::= {myCompany 2}
testTrap NOTIFICATION-TYPE
STATUS current
DESCRIPTION "Test notification"
::= {myCompany 3}
END
来自 build-pysnmp-mib 的 .py 脚本:
$ mib2dev.py --pysnmp-mib-dir="." --mib-module=MY-MIB.py
Traceback (most recent call last):
File "/usr/local/bin/mib2dev.py", line 4, in <module>
__import__('pkg_resources').run_script('snmpsim==0.2.4', 'mib2dev.py')
File "build/bdist.macosx-10.10-x86_64/egg/pkg_resources/__init__.py", line 696, in run_script
File "build/bdist.macosx-10.10-x86_64/egg/pkg_resources/__init__.py", line 1614, in run_script
File "/usr/local/lib/python2.7/site-packages/snmpsim-0.2.4-py2.7.egg/EGG-INFO/scripts/mib2dev.py", line 240, in <module>
[ builder.ZipMibSource(m).init() for m in mibDirs ]
File "/Library/Python/2.7/site-packages/pysnmp-4.2.5-py2.7.egg/pysnmp/smi/builder.py", line 45, in init
File "/Library/Python/2.7/site-packages/pysnmp-4.2.5-py2.7.egg/pysnmp/smi/builder.py", line 103, in _init
ValueError: Empty module name