当前实现一个记录trp信息到文件的方法
先建一个shell文件lognotify,路径在/usr/local/net-snmp/share/snmp
---------------------------------------------------------------------------------------------------------------------------------
#!/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 >checkfile
---------------------------------------------------------------------------------------------------------------------------------
在snmptrapd.conf脚本添加脚本处理
---------------------------------------------------------------------------------------------------------------------------------
authcommunity log,execute,net public
traphandle default /usr/local/net-snmp/share/snmp/lognotify
---------------------------------------------------------------------------------------------------------------------------------
启动snmptrapd
ubuntu@ubuntu:/usr/local/net-snmp/sbin$ sudo ./snmptrapd -d -f -Lo -c /usr/local/net-snmp/share/snmp/snmptrapd.conf
之后在路径/usr/local/net-snmp/sbin下就可以看到checkfile记录文件
trap: <UNKNOWN> UDP: [192.168.186.208]:59306->[192.168.186.241]:162 DISMAN-EVENT-MIB::sysUpTimeInstance = 0:1:41:17.24, SNMPv2-MIB::snmpTrapOID.0 = SNMPv2-SMI::enterprises.12581.1.1, SNMPv2-SMI::enterprises.12581.1.2.1.0 = ""
trap: <UNKNOWN> UDP: [192.168.186.208]:46622->[192.168.186.241]:162 DISMAN-EVENT-MIB::sysUpTimeInstance = 0:1:41:22.24, SNMPv2-MIB::snmpTrapOID.0 = SNMPv2-SMI::enterprises.12581.1.1, SNMPv2-SMI::enterprises.12581.1.2.1.0 = ""
trap: <UNKNOWN> UDP: [192.168.186.208]:46622->[192.168.186.241]:162 DISMAN-EVENT-MIB::sysUpTimeInstance = 0:1:41:22.24, SNMPv2-MIB::snmpTrapOID.0 = SNMPv2-SMI::enterprises.12581.1.1, SNMPv2-SMI::enterprises.12581.1.2.1.0 = ""
trap: <UNKNOWN> UDP: [192.168.186.208]:40870->[192.168.186.241]:162 DISMAN-EVENT-MIB::sysUpTimeInstance = 0:1:41:22.24, SNMPv2-MIB::snmpTrapOID.0 = SNMPv2-SMI::enterprises.12581.1.1, SNMPv2-SMI::enterprises.12581.1.2.1.0 = ""