同IDのイベントログに対して複数のトリガー
イベントログに特定のイベントIDのログが出力された際には深刻度を"Warning"とし、それ以外のものは深刻度を"Error"とすることで、
それぞれの深刻度に応じたアクションで、アラートの送信先を制御したいと思っています。
・例:イベントID (111) → Warning → PCメールにアラート送信
イベントID (111)以外 → Error → 携帯メール
マニュアルを読み、以下のように設定したのですが、上手く制御が出来ていません。。。
尚、OSはLinux(Amazon Linux)を使用しています。
[アイテムの設定]
----------------
ホスト :Template_ServerA
タイプ :Zabbixエージェント(アクティブ)
キー :eventlog[Application,,"Error"]
データ型:ログ
アプリケーション:Log
----------------
[トリガーの設定(Error)]
----------------
名前:ログ監視(Zabbix server)
条件式:{Template_ServerA:eventlog[Application,,"Error"].logseverity()}=4&{Template_ServerA:eventlog[Application,,"Error"].nodata(180)}=0&{Template_ServerA:eventlog[Application,,"Error"].logeventid(999)}=0
障害イベントを継続して生成:なし
深刻度:重度の障害
----------------
[トリガーの設定(Warning)]
----------------
名前:ログ監視(Zabbix server)
条件式:{Template_ServerA:eventlog[Application,,"Error"].logseverity()}=4&{Template_ServerA:eventlog[Application,,"Error"].nodata(180)}=0&{Template_ServerA:eventlog[Application,,"Error"].logeventid(999)}=1
障害イベントを継続して生成:あり
深刻度:警告
----------------
[アクションの実行条件(Warning)]
----------------
トリガーの値="障害"
トリガーの深刻度<="警告"
----------------
■状況
・Eventlog(999) を意図的に作成すると、コンソールの「監視データ」>「トリガー」の部分でWarningのトリガーのステータスが"障害"になる
・Error、Warningともにアクションに設定したメール通知は出来ていない。
「障害イベントを継続して生成」の箇所は、よく動作がわかっておらず、これを"あり"にしたところ、監視データに"障害"と出るようになった
ので、Warningのトリガーを"あり"と設定しています。
どなたか解決の方法をご存知でしたら、ご教授頂けますでしょうか。
宜しくお願い致します。
TNK - 投稿数: 4731
利用されているZabbixのバージョンをお教えください。
トリガーの条件式からZabbix 2.4ではないと思うのですが、バージ
ョンによって対応が異なる場合がありますので、ご質問頂く時は、
Zabbixの詳細なバージョンをお教えください。
そして、アクションの実行条件内で、
と指定されているので警告以下、つまり「未分類」「情報」「警告」
でしかアクションを実行しません。
つまり、今回登録されたErrorの方のトリガーで検知されたものは、
アクションが実行されません。
警告や重度の障害などをアクションで通知されたいのであれば、等
号の向きを再度ご確認ください。
障害イベントを継続して生成に関しては、「あり」にしておくと、
そのトリガーが障害の状態の時にでも、新たに同じ条件のログが出
力された場合も、トリガーが発生して、対応するアクションが用意
されていれば、アクションが実行されます。
複数回障害のログが発生したときに、その障害毎にアクションを実
行したいのであれば、「あり」に設定してください。
障害と判断しているときに、同じログが来ても無視したいのであれ
ば、「なし」に設定します。
まずは、トリガーの深刻度の条件と、障害イベントを継続して生成
の部分を見直してみてください。
Masashi - 投稿数: 6
TNKさん
回答ありがとうございます。
Zabbixのバージョンは2.0を使用しています。
そして、質問文の条件式が欠けていました…。
再送致します。
[トリガーの設定(Error)]
{Template_ServerA:eventlog[Application,,"Error"].logseverity()}=4&
{Template_ServerA:eventlog[Application,,"Error"].logeventid(111)}=0
[トリガーの設定(Warning)]
{Template_ServerA:eventlog[Application,,"Error"].logseverity()}=4&
{Template_ServerA:eventlog[Application,,"Error"].logeventid(111)}=1
上記の条件であれば、1つのエラーが発生した際に、深刻度Errorのトリガーは
検知せず、深刻度Warningのトリガーが検知する形になると思っています。
障害イベントを継続して生成の部分も再度見なおしてみたいと思います。
以上、宜しくお願い致します。
KAZ - 投稿数: 1085
Masashi さん
下記でどうですか?
送信する先が別ならアクションも分けたほうが簡単かと。
■PCメールにアラート送信のトリガー
条件式:
{Template_ServerA:eventlog[Application,,"Error"].logseverity()}=4&anmp;
{Template_ServerA:eventlog[Application,,"Error"].logeventid(111)}=1
障害イベントを継続して生成:チェックon
重要度:Warning
■携帯メールにアラート送信のトリガー
条件式:
{Template_ServerA:eventlog[Application,,"Error"].logseverity()}=4&anmp;
{Template_ServerA:eventlog[Application,,"Error"].logeventid(111)}=0
障害イベントを継続して生成:チェックon
重要度:Error
■PCメールにアラート送信のアクション
送信先:PCメール
トリガーの値="障害"
トリガー名:PCメールにアラート送信のトリガー
■携帯メールにアラート送信のアクション
送信先:携帯メール
トリガーの値="障害"
トリガー名:携帯メールにアラート送信のトリガー
<<「障害イベントを継続して生成」について>>
「障害イベントを継続して生成」がoffの場合は
現在の状態が障害の場合は障害イベント生成されません。
※:障害→正常→障害→正常…と状態遷移します。
「障害イベントを継続して生成」がonの場合は
現在の状態が障害の場合でも障害イベント生成されます。
Masashi - 投稿数: 6
KAZさん
回答頂きありがとうございます。
トリガーの「障害イベントを継続して生成」をONにしたことで、
監視データの"トリガー"にWarningのトリガーが「障害」として
表示されるようになりました!
アクションも正常に起動し、メールが届くようになりました。
本当に助かりました。ありがとうございました。