Am un cisco și un server de monitorizare cu icinga (a.k.a. nagios, thruk). Vreau să primesc capcane de la Cisco și să le arăt în icinga.Dar nu pot vedea interfața și vlan-ul pentru capcana errdisable.
Am descărcat mib-uri de pe cisco, inclusiv CISCO-ERR-DISABLE-MIB.my. Apoi l-am convertit pentru snmptt cu această comandă:
snmpttconvertmib --in=CISCO-ERR-DISABLE-MIB.my --out=snmptt.conf --exec='/bin/bash /usr/local/bin/trap/submit_check_result $r '"errdisable 2" -net_snmp_perl - -format=4
care a produs următoarea configurație (am înlocuit calea absolută către mib cu ... și valorile variabile cu ...):
#
#
#
#
MIB: CISCO-ERR-DISABLE-MIB (fișier:/.../CISCO-ERR-DISABLE-MIB.my) convertit la miercuri 8 septembrie 16:49:53 2021 folosind snmpttconvertmib v1.4.2
#
#
#
EVENT cErrDisableInterfaceEvent .1.3.6.1.4.1.9.9.548.0.1.1 „Evenimente de stare” Normal
FORMAT cErrDisableInterfaceEvent - cErrDisableIfStatusCause:$1
EXEC /bin/bash /usr/local/bin/trap/submit_check_result $r errdisable 2 "cErrDisableInterfaceEvent - cErrDisableIfStatusCause:$1"
SDESC
cErrDisableInterfaceEvent este generat atunci când o interfață
sau {interfață, vlan} este dezactivată de eroare de funcție
specificat în cErrDisableIfStatusCause.
cErrDisableInterfaceEvent este depreciat și înlocuit cu
cErrDisableInterfaceEventRev1.
Variabile:
1: cErrDisableIfStatusCause
Sintaxă="INTEGER"
1: udld
...
9: portSecurityViolation
Descr="Acest obiect specifică caracteristica/evenimentul care a provocat
{interfață, vlan} (sau întreaga interfață) să fie
eroare dezactivată."
EDESC
#
#
#
EVENT cErrDisableInterfaceEventRev1 .1.3.6.1.4.1.9.9.548.0.2 „Evenimente de stare” Normal
FORMAT cErrDisableInterfaceEventRev1 - cErrDisableIfStatusCause:$1
EXEC /bin/bash /usr/local/bin/trap/submit_check_result $r errdisable 2 "$N - $+1"
SDESC
cErrDisableInterfaceEventRev1 este generat atunci când an
interfața sau {interfața, vlan} este dezactivată de eroare de
caracteristică specificată în cErrDisableIfStatusCause.
cErrDisableInterfaceEventRev1 este depreciat
cErrDisableInterfaceEvent pentru a-l face compatibil cu RFC 2578.
Conform secțiunii 8.5 din RFC 2578, următorul
la ultimul subidentificator în numele oricărui nou definit
notificarea trebuie să aibă valoarea zero.
Variabile:
1: cErrDisableIfStatusCause
Sintaxă="INTEGER"
1: udld
...
9: portSecurityViolation
Descr="Acest obiect specifică caracteristica/evenimentul care a provocat
{interfață, vlan} (sau întreaga interfață) să fie
eroare dezactivată."
EDESC
Există două capcane, mă interesează doar cErrDisableInterfaceEventRev1, dar nu și cErrDisableInterfaceEvent depreciat.
Acesta este send-errdisable.sh meu pe care îl folosesc pentru a genera un eveniment de testare errdisable:
TO_HOST=icinga.example.com
comunitate=abcabc
snmptrap -m ALL -v 2c -c $comunity $TO_HOST '' CISCO-ERR-DISABLE-MIB::cErrDisableInterfaceEventRev1 \
CISCO-ERR-DISABLE-MIB::cErrDisableIfStatusCause.2.0 i 1 \
2>/dev/null
Acum, când generez un eveniment errdisable, în ieșirea pluginului icinga pentru serviciul errdisable primesc următorul text:
cErrDisableInterfaceEventRev1 - cErrDisableIfStatusCause:udld
dar mă aștept ca interfața și vlan-ul să fie acolo, așa:
cErrDisableInterfaceEventRev1 - cErrDisableIfStatusCause.2.0:udld
De ce nu se arata? Și cum să remediez asta?