Pocket

Zabbix 2.0 を使って、テキストログの監視を行う方法

  • add this entry to hatena bookmark

Zabbix 2.0.5 を使ってテキストログの監視を行い、指定したキーワード(エラーと判断する文字列)が記録された場合に検知できるようにする手順を記載しています。

テキストログの監視には、Zabbixエージェント(アクティブ)を使います。Zabbixエージェント(アクティブ)は、zabbix_agentd で利用する事になります(xinetd を利用する zabbix_agent では利用できません)。Zabbixエージェントが「アクティブ」に自分自身でログを監視し、結果をZabbixサーバに通知します。

Zabbixバージョン

今回利用したZabbixのバージョンは以下になります。

  • Zabbixサーバ:2.0.5
  • Zabbixエージェント:2.0.5

Zabbix設定ファイル

Zabbixエージェント(アクティブ)側である zabbix_agentd.conf では以下が関連項目です。

ServerActive=(Zabbix Server アドレス)
RefreshActiveChecks=120 (Zabbix Server からアクティブチェックの項目リストを取得する間隔)

なお、zabbix_agentを起動した際には、以下のようなログが出力されます。

  9641:20130525:231813.578 Starting Zabbix Agent [Zabbix server]. Zabbix 2.0.5 (revision 33558).
  9642:20130525:231813.579 agent #0 started [collector]
  9643:20130525:231813.580 agent #1 started [listener]
  9644:20130525:231813.580 agent #2 started [listener]
  9645:20130525:231813.580 agent #3 started [listener]
  9646:20130525:231813.581 agent #4 started [active checks]

「active checks」と表示されています。

監視対象ファイル

監視対象のテキストログファイルは、Zabbixエージェントの稼働ユーザである「zabbix」アカウントが少なくとも参照権限を持っている必要があります。

もし、root アカウントに対する権限しかないログを監視する必要がある場合は、zabbix_agentd.conf で「AllowRoot」設定を使う事で対応できると思います。

アイテム設定

アイテムを設定する際の項目は以下になります。

  • タイプ:Zabbixエージェント(アクティブ)
  • キー:log[ログファイルの絶対パス]
  • データ型:ログ

「キー」は、いくつかの設定が可能ですが、最もシンプルな設定は、log[ログファイルの絶対パス]になります。例えば、/tmp/zabbix_test.log を監視したい場合は、log[/tmp/zabbix_text.log] になります。

zabbix-log-item

何かしらの理由でうまくいかない場合は、キー項目にはオプションがいくつかありますので、「選択」ボタンを押下し、キー設定フォーマットを確認し、試してみると良いと思います。

トリガー設定

トリガーを設定する際は、アイテム一覧画面で、該当のログ監視アイテムの左横に表示されるアイコンをクリックすると「トリガーを作成」リンクが表示されます。そこからトリガーを作成すると楽です。

zabbix-log-item-trigger

表示される画面で、アイテムを選択します。

以下のトリガー設定画面が表示されます。

監視キーワードを設定するには、「条件式」の箇所で監視する文字列(例:error)を設定して「追加」ボタンをクリックします。

zabbix-log-trigger-conf

「深刻度」を選択し、「保存」ボタンをクリックすれば、トリガーが作成されます。

作成したトリガーは、「設定」ー「ホスト」画面から、該当ノードのトリガーリンクからトリガー一覧を表示し、トリガー名を表示すれば設定内容を確認できます。

zabbix-trigger

トリガーの条件式は「(({Zabbix server:log[/tmp/zabbix_test.log].regexp(error)})#0)」になっています。

ログ監視のテスト

設定したテキストログ監視のアイテムとトリガーをテストしてみます。

以下のコマンドで、ログファイル「/tmp/zabbix_test.log」ファイルに、監視キーワードである「error」を追記します。

# echo "error test" >> /tmp/zabbix_test.log

トリガーで設定したキーワードがログファイルに記録されたので、Zabbix画面に表示されている事を確認します。確認する画面は、「監視データ」ー「トリガー」画面となります。

zabbix-trigger-display

エラー検知時にメール通知を受けたい場合は、アクション設定する事によって可能となります。

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*

チェックサイト RSS Feed読者登録はいかがでしょうか?RSS配信中です。