SNMPTTを使用した際の誤変換
いつもお世話になります。
実環境のZABBIXで、SNMPトラップにて監視をしております。
その際、実際のトラップとSNMPTTに渡されたものに差異がありまして、対処法があればと思い投稿いたしました。
環境
zabbix4.0.22
centos7.5.1804
snmptt-1.4.2-1.el7.noarch
net-snmp 5.7.2-33
正常時トラップを受けた場合、/var/log/messages
Apr 2 10:00:11 SV snmptrapd[905]: 2021-04-02 10:00:11 172.16.250.235(via UDP: [172.16.250.235]:162->[192.168.200.129]:162) TRAP, SNMP v1, community public#012#011.1.3.6.1.4.1.119.2.3.84.7.2 Enterprise Specific Trap (1) Uptime: 189 days, 1:48:17.91#012#011.1.3.6.1.4.1.119.2.3.84.7.1.1.1.2.2 = STRING: test2#011.1.3.6.1.4.1.119.2.3.84.7.1.1.1.3.2 = INTEGER: 20#011.1.3.6.1.4.1.119.2.3.84.7.1.1.1.4.2 = INTEGER: normal(1)
/etc/snmp/snmptt.log
2021/04/02 10:31:32 .1.3.6.1.4.1.119.2.3.84.7.2.0.1 Normal "Status Events" 172.16.250.235 - ZBXTRAP 172.16.250.235 This notification is Netmon Watchgroup status change. test2 20 normal
異常時トラップを受けた場合、/var/log/messages
Apr 2 10:37:14 SV snmptrapd[906]: 2021-04-02 10:37:14 172.16.250.235(via UDP: [172.16.250.235]:162->[192.168.200.129]:162) TRAP, SNMP v1, community public#012#011.1.3.6.1.4.1.119.2.3.84.7.2 Enterprise Specific Trap (1) Uptime: 189 days, 2:25:20.31#012#011.1.3.6.1.4.1.119.2.3.84.7.1.1.1.2.2 = STRING: test2#011.1.3.6.1.4.1.119.2.3.84.7.1.1.1.3.2 = INTEGER: 20#011.1.3.6.1.4.1.119.2.3.84.7.1.1.1.4.2 = INTEGER: stand(2)
/etc/snmp/snmptt.log
2021/04/02 10:37:14 .1.3.6.1.4.1.119.2.3.84.7.2.0.1 Normal "Status Events" 172.16.250.235 - ZBXTRAP 172.16.250.235 This notification is Netmon Watchgroup status change. test2 20 normal
上記のように、messages 行末 INTEGER:normal(1)が INTEGER:normal(2)に変化した場合、snmpttのログは、normalのままで、standに変わりません。
再起動などで、最初の受けたトラップがstandの場合は、standのまま、変化なしです。
現状 snmptrapdは、snmptthandler-embeddedを使用しており、traphandle default /usr/sbin/snmptthandlerでの場合は、正常にSNMPTTに渡されます。
traphandleまま運用すればよいのですが、snmpトラップの処理が、多いのでできれば、snmptthandler-embedded 使用したいと思っています。
snmptthandler-embeddedのスクリプトをのぞいてみたのですが、当方の技量では、わかりませんでした。
お力添えを頂ければと思います。
宜しくお願い致します。
TNK - 投稿数: 4731
トラップの変換は、Zabbixの処理ではないので、snmpttの設定を確
認してみてください。