哪里列出了 Net-SNMP 工具的可用调试令牌?

哪里列出了 Net-SNMP 工具的可用调试令牌?

snmpcmd(1)“通用选项”下,它显示,

    -D[TOKEN[,...]]
           Turn  on  debugging  output  for  the  given TOKEN(s).  Try ALL for
           extremely verbose output.

除此之外我还可以使用什么令牌ALL?这些令牌是什么意思?这些工具对于它们将接受哪些令牌非常宽容。

$ snmpgetnext -Dserverfault_is_awesome [...]
registered debug token serverfault_is_awesome, 1
[...]

到目前为止我发现的最好的东西是讨论 v5.4.2.1 的 wiki 页面,但它没有解决列出对当前安装的版本(在我的情况下是 5.7.2)有效的调试令牌的一般问题。

答案1

代码本身并不维护可用令牌列表,MIB 开发人员可以自由定义自己的令牌。因此,该库将接受任何字符串作为令牌。

由于没有内部列表,因此无法在运行时报告可用的令牌。您所能做的就是下载源代码并运行 wiki 上建议的命令(我仅对其进行了一点调整):

find . -name "*.c" | xargs grep "DEBUGMSG[A-Z_]*(( *\"" | sed 's/^.*DEBUGMSG[A-Z_]*(( *\"\([^\"]*\).*/\1/' | sort -u 

我还添加了一个新的 wiki 页面,其中列出了一些更有用的令牌,以及一个包含 5.7.2 列表的新页面:

相关内容