LoginSignup
110
124

More than 5 years have passed since last update.

Zabbixでログ監視

Last updated at Posted at 2014-03-31

Zabbixでのログ監視の自分的設定メモ

すぐに忘れてしまうのでこちらに残しておきます。

アプリ系のログは通常はfluentdを使ってログをゴニョゴニョしてメールを飛ばしているが
システム系ログをZabbixで監視設定した時のメモ。テンプレートにすれば楽なので。

ポイントは普通に設定してしまうと監視対象のログの全メッセージが
Zabbixに格納されてしまい、無駄に容量食うので必要なキーワードだけを監視対象にしたい。

前提

前もってZabbixがroot権限で実行できるように/etc/zabbix/zabbix_agentd.conf内の# AllowRoot=0をコメントインしておく。

# AllowRoot=0
↓↓↓
AllowRoot=1

メモ

  1. GUIでZabbixサーバへログインし、管理 -> 一般設定 -> GUIの設定 -> 正規表現 -> 正規表現の作成
  2. 条件式を下記のように設定

名前 :messages ※任意
条件式 :error|warn|fail|fatal|ERROR|WARN|FAIL|FATAL ※任意
条件式の形式 :結果が真
大文字小文字を区別 :いいえ ※この条件だと「いいえ」にしても大文字小文字が区別されないので注意

zabbix-server- 正規表現の設定.png

3.2で設定した条件式をテスト
テスト文字列へ条件式で設定した文言のうち例として「error」を入力し、テスト条件式をクリックし確認する

最終結果が真であれば動作OK

正規表現のテスト.png

4.アクションの設定、
設定 -> テンプレート -> <任意のテンプレート>アイテム -> アイテムの作成

名前 :ログ監視(/var/log/messages)
タイプ :Zabbixエージェント(アクティブ)
キー :log[/var/log/messages,@messages]
データ型 :ログ
更新間隔(秒) :30 ※任意
ヒストリ保存期間:90 ※任意

zabbix-server- アイテムの設定.png

5.トリガーの設定、
アイテム -> ログ監視(/var/log/messages)右側メニューから「トリガーの作成」を選択

名前 :ログ監視(/var/log/messages) on {HOST.NAME}
条件式:({Template OS Linux:log[/var/log/messages,@messages].iregexp(@messages)})#0&({Template OS Linux:log[/var/log/messages,@messages].nodata(300)})=0

zabbix-server- トリガーの設定追加.png

6.loggerでテスト
logger -p user.warn -t [TEST] "logger test \"warn\""
監視データのヒストリに格納され、アクションでメールが飛べば想定通りの動き

logger -p user.warn -t [TEST] "logger test \"hoge\""
これは正規表現にマッチしないのでヒストリに格納されない。想定通りの動き

110
124
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
110
124