zabbix_trap_receiver.pl について
投稿失礼します。
先日CentOS7環境でのzabbix3.4にて、SNMPTTでのtrap監視を実現させることができず
zabbix_trap_receiver.plを使いtrap監視することになったのですが、systemctlコマンドのログにもtrapの情報が出力されるようになりました。
これは使用上避けれないものなのでしょうか?
それとも出力先を変えるとどうにかなるものなのでしょうか?
構築初心者のため切り分けることもできずもうしわけございません。
よろしくお願いします。
参考にしたサイト↓
http://extstrg.asabiya.net/pukiwiki/index.php?ZABBIX%20SNMPTrap%C0%DF%C4...
heya - 投稿数: 319
まず前提として、私は zabbix_trap_receiver.pl というものを使ったことが無く、スクリプトの中身を適当に眺めながら書いています。なので、一部外したことを書いているかもしれません(たぶん合っているとは思いますが)。
OPTIONS="-m +ALL -Ls6 -On -p /var/run/snmptrapd.pid" の -Ls6 は、(facility=LOCAL6 で) syslog にログを出力するという意味のオプションです。ただ、CentOS 7 では、rsyslog に行く前に journald というものを経由します。
「systemctlコマンドのログ」というのがよく分かりませんが、systmctl status とかでログが表示されるってことなら、まあそうなりますよね、という程度のことです。
別にあっても困るようなものではないと思いますが、どうしても嫌なら、 -Ls6 を消して -Lf /var/log/snmpd/snmptrap.log とかすればよさそうな気がします(試してはいません)。
#ただ、snmptrapd.conf に書かれている logoption f /var/log/snmpd/snmptrap.log ってのも
#同じ意味のはずなんですよね。なぜ -Ls6 と logoption f ~ を両方書いているのかは、よく分かりません。
*****
一応書いておきますが、今回の場合(snmptt を使うときもですが)ログファイルは二つあるので混同しないようにしてください。
snmptrapd のログは、snmptrapd 自身が「こういうトラップを受け取った」という情報を記録するものです。snmptt とか Zabbix とかは関係ありません。
上のページの手順だと、 /var/log/snmpd/snmptrap.log に記録されます。
snmptrapd.conf で perl do ~ とやっているのは、上の snmptrapd 自身のログとは別に、スクリプト(zabbix_trap_receiver.pl)にトラップの情報を渡している、ということです。
zabbix_trap_receiver.pl では渡された情報を読んで、適当に加工してファイルに書き込んでいます。
上のページの手順だと、 /var/log/zabbix/snmptrap.log がそれです。
そして、Zabbix は /var/log/zabbix/snmptrap.log を見てあれこれ判断するわけです。
#snmptt を使おうが zabbix_trap_receiver.pl を使おうが、
#ちゃんと /var/log/zabbix/snmptrap.log に書かれるのであれば
#後の Zabbix の設定は大して変わらないと思うのですが・・・。
h-tahara - 投稿数: 4
返信誠にありがとうございます
大変わかりやすく説明いただきましてありがたく思います。
まだまだこの部分のここを変更するとここに反映するなどの詳しいところまでわからず
大変助かりました。
リーダーなどと相談をし必要でなければsystemctl status のログには出力されないように変更しようと思います。
ほんとうにありがとうございます。