SNMP陷阱将通知传递给脚本,以便使用NET-SNMP进一步处理

我一直试图通过使用NET-SNMP“traphandle”在dell s4810交换机上创build接口closures状态的简单警报。 我想知道如何将通知信息传递给脚本,以便我可以parsing文本? 我能够激活脚本,但不能传递通知。 也许有一个很好的Python或Perl模块? 我会感激任何意见或build议。

当你收到一个SNMP陷阱时,守护进程snmptrapd会把这个陷阱转发给一个外部程序(典型的是你的脚本)。

snmptrapd将添加一些参数(IP地址,主机名,通知,OID),这些参数将在脚本的标准input中发送。

接收陷阱的脚本示例,该脚本来自http://net-snmp.sourceforge.net/wiki/index.php/TUT:Configuring_snmptrapd

#!/bin/sh read host read ip vars= while read oid val do if [ "$vars" = "" ] then vars="$oid = $val" else vars="$vars, $oid = $val" fi done echo trap: $1 $host $ip $vars 

这个脚本将接收snmptrapd守护进程的参数,并且会回显它们。 所以你可以添加一个命令来导出到一个文件,看看你的configuration是否正常工作。