気になる事項を調査するためにログを見たい!
少し前?かなり前?にインストールしたZabbixなんですが、とあるエラーがず~っと表示されているのでログを確認して原因を調査したいと思います。
そのためにはZabbixログの見方から勉強しないことには。参考にさせていただいたのはこちら。
Zabbixトラブルシューティング-Zabbix Serverログの見方-
とてもわかりやすかったです。ありがとうございます。
さてさて、Zabbixに関するログファイルは
- /var/log/zabbix-server/zabbix_server.log
- /var/log/zabbix-agent/zabbix_agentd.log
の2種類があり、サーバ側とエージェント側で別々のログが存在している様子。
ちなみにエージェント側のログは空っぽでしたのでサーバ側を覗いてみますと
# vi /var/log/zabbix-server/zabbix_server.log 1613:20160815:072245.401 executing housekeeper 1613:20160815:072249.352 housekeeper [deleted 3276 hist/trends, 0 items, 0 events, 0 sessions, 0 alarms, 0 audit items in 3.950521 sec, idle 1 hour(s)]
と、こんな具合の記述が。見方は左から「処理プロセスのID:年月日:時間」、その後に処理内容が記載されています。
上の例だと
- プロセスID:1613にて2016/8/15 7:22:45にハウスキーピング処理が実行。
- 7:22:49秒に3276件のヒストリー/トレンドデータを削除。処理時間約4秒
という感じ。
これを見ても何が原因なのかさっぱり判別ができません。もっと詳細な情報が欲しい。。。
ログファイルに関する設定
ログファイルに関する設定は
- /etc/zabbix/zabbix_server.conf
- /etc/zabbix/zabbix_agentd.conf
それぞれで行われており、規定のログレベルは「DebugLevel=3」とされています。
このDebugLevel、値は0~4まであり
- 0:デバッグしない(システムの起動や停止などのみ表示)
- 1:0に加えてZabbixの稼動に関して致命的なエラーを出力
- 2:1に加えて監視処理中のエラーを出力
- 3:2に加えてエラー時の内部処理の失敗情報などを出力
- 4:3に加えて関数の動作など内部処理状況を克明に出力
となっていて、4にすることで詳細な処理状況が分かるため原因も究明しやすくなるということ(情報が増えるので読むのは大変になるが…)。
そこで書く設定ファイルを編集してより詳細なログを取得できるようにしてみます。
# vi /etc/zabbix/zabbix_server.conf # service zabbix-server restart # vi /etc/zabbix/zabbix_agentd.conf # service zabbix-agent restart
設定変更後のログを眺めてみると比較にならないぐらい情報量が増えています。
見るのは大変そうですが、これでトラブル時の調査には十分そうな気がします。気がするだけですが。
~2016/8/17追記
情報量が増えたログですが、改めて見直してみるとわずか数分間のログしか残っていない様子。どうやらログのサイズが肥大化しすぎて古い情報から削除されてしまうようです。
これでは欲しい情報が残らないので、ログファイルの容量を増やします。
# vi /etc/zabbix/zabbix_server.conf ↓追記 LogFileSize = 1024 「:wq」で保存して終了
デフォルトでは1MBとなっているところを1024MBまで拡張します。正直言って結構な量だと思うんですが、原因を調べるまでの一時的な措置ということで。
原因究明でき次第DebugLevel=3、LogFileSize=1へと戻します。