Monitoring
為什麼 snmptt 不翻譯這個陷阱?
我有一個發送 snmp v1 陷阱的設備,但 snmptt 無法翻譯它們。為了獲取陷阱的副本,我停止了 snmptt 服務,並將陷阱複製到 /tmp。
我試圖觸發的 OID 是:
.1.3.6.1.4.1.476.1.42.3.2.1.15
這是來自的原始陷阱
/var/spool/snmptt
:<UNKNOWN> UDP: [10.108.64.250]:4999->[170.6.78.54] .1.3.6.1.2.1.1.3.0 1:7:58:27.81 .1.3.6.1.6.3.1.1.4.1.0 .1.3.6.1.4.1.476.1.42.3.3.0.0.2 .1.3.6.1.4.1.476.1.42.3.2.3.1.1.19 19 .1.3.6.1.4.1.476.1.42.3.2.3.1.2.19 .1.3.6.1.4.1.476.1.42.3.2.1.15 .1.3.6.1.4.1.476.1.42.3.2.3.1.3.19 1:7:58:27.79 .1.3.6.1.6.3.18.1.3.0 10.108.64.250 .1.3.6.1.6.3.18.1.4.0 "public" .1.3.6.1.6.3.1.1.4.3.0 .1.3.6.1.4.1.476.1.42.3.3.0
這是來自的條目
snmpttunknown.log
:Thu Jul 10 14:32:05 2014: Unknown trap (.1.3.6.1.4.1.476.1.42.3.3.0.0.2) received from 10.108.64.250 at: Value 0: 10.108.64.250 Value 1: 10.108.64.250 Value 2: 1:5:34:06.89 Value 3: .1.3.6.1.4.1.476.1.42.3.3.0.0.2 Value 4: 10.108.64.250 Value 5: public Value 6: .1.3.6.1.4.1.476.1.42.3.3.0 Value 7: Value 8: Value 9: Value 10: Ent Value 0: .1.3.6.1.4.1.476.1.42.3.2.3.1.1.15=15 Ent Value 1: .1.3.6.1.4.1.476.1.42.3.2.3.1.2.15=.1.3.6.1.4.1.476.1.42.3.2.1.1 Ent Value 2: .1.3.6.1.4.1.476.1.42.3.2.3.1.3.15=1:4:57:29.29
如您所見,snmptt 認為 OID 是
.1.3.6.1.4.1.476.1.42.3.3.0.0.2
. 它不是。有沒有辦法配置 snmptt 以觸發陷阱中的任何匹配 OID?
任何其他無需去供應商的情況下保存它的方法(我認為這是一個大黑洞)。
我能夠弄清楚這一點。Liebert 表示他們只擷取 1 個 OID。然後 varbind 2 包含特定於 OID 的警報。因此,在 SNMPTT 中,我創建了一個特殊的 Liebert 腳本,該腳本採用 varbind 2(
$2
來自EXEC
),然後將其與 case 語句匹配,該語句為我們關心的 varbind 2 OID 設置 Nagios 警報。