Traps in der Praxis 2 Auswertung von Traps |
![]() |
© Michael Kalinka, 2002 | VIII.3 |
control=1 # Steuervariable while [ "$control" -eq 1 ] do read PARAMETER if [ "$PARAMETER" = "" ];then control=0 # Schluß, wenn keine Parameter mehr kommen fi echo $PARAMETER >> /usr/share/snmp/trap.log done
1 speedy.michi.de 2 192.168.0.100 3 system.sysUpTime.0 0:1 4 .iso.org.dod.internet.snmpV2....snmpTrapOID.0 .iso.org.dod.internet.snmpV2.snmpModules.snmpMIB.snmpMIBObjects.snmpTraps.linkUp 5 interfaces.ifTable.ifEntry.ifAdminStatus up 6 .iso.org.dod.internet.snmpV2....snmpTrapAddress.0 192.168.0.100 7 .iso.org.dod.internet.snmpV2....snmpTrapCommunity.0 "public" 8 .iso.org.dod.internet.snmpV2....snmpTrapEnterprise.0 enterprises
Der Trapservice kann durch einfachen Aufruf auf der Kommandozeile gestartet werden. Der Standardausgabekanal ist dann der syslog. Die Ausgabe kann mit -P auch auf die Shell geleitet werden, das Ausgabeformat kann mit -F "..." spezifiziert werden (vgl. man snmptrapd).
Viele Informationen können so geloggt und ausgewertet werden, die beim Traphandler in der snmptrapd.conf nicht vorliegen.
Vorschlag : Ausgabe des snmptrapd in eine Named Pipe leiten und explizit auswerten.
Jul 3 05:23:18 thin1 snmptrapd[1535]:
192.168.0.100: Cold Start Trap (0) Uptime: 0:00:00.00 Jul 3 05:23:21 thin1 snmptrapd[1535]:
192.168.0.100: Link Up Trap (0) Uptime: 0:00:15.06, interfaces.ifTable.ifEntry.ifIndex.1 = 1 Jul 3 05:23:21 thin1 snmptrapd[1535]:
192.168.0.100: Link Up Trap (0) Uptime: 0:00:15.06, interfaces.ifTable.ifEntry.ifIndex.16777219 = 167772