Windowsイベントログ監視にて特定のイベントIDとイベントソースを紐付けての抑止
お世話になっております。
Windowsイベントログ監視にて特定のイベントIDとイベントソースを紐付けて抑止(アクションをおこさない)する設定を
実現する為、トリガーの依存関係を使用する事を検討しておりますが、なかなか意図した動作となりません。
Zabiixのバージョンは2.0.8で
検証で設定した内容は以下となります。
(アプリケーションログで警告のものをメール通知するが特定のイベントは無視する動きを想定しております)
--------------------------------------------------
アイテム
名前:Application Log
タイプ:Zabbixエージェント(アクティブ)
キー:eventlog[Application]
データ型:ログ
更新間隔:1秒
トリガー
名前:Application Log WARNING
条件式:{[ホスト名]:eventlog[Application].logseverity(2)}=2 =0
深刻度:警告
依存関係:[ホスト名]:Application Log WARNING IGNORE EVENT
トリガー(抑止対象)
名前:Application Log WARNING IGNORE EVENT
条件式:
(
({[ホスト名]:eventlog[Application].logsource("TEST_APP_WA_1")}=1) & ({[ホスト名]:eventlog[Application].logeventid(101)}=1)
) &
{[ホスト名]:eventlog[Application].nodata(30)}=0
深刻度:情報
アクション
名前:Action kensyo
アクションの実行条件:
メンテナンスの状態 期間外 "メンテナンス"
トリガーの値 = "障害"
トリガーの深刻度 <> "情報"
ホスト = [ホスト名]
アクションの実行内容:
ユーザーにメッセージを送信
--------------------------------------------------
抑止対象が複数存在する場合は、
--------------------------------------------------
トリガー(抑止対象2)
名前:Application Log WARNING IGNORE EVENT 2
条件式:
(
({[ホスト名]:eventlog[Application].logsource("TEST_APP_WA_2")}=1) & ({[ホスト名]:eventlog[Application].logeventid(102)}=1)
) &
{[ホスト名]:eventlog[Application].nodata(30)}=0
深刻度:情報
--------------------------------------------------
の様にトリガーを作成していき、
トリガー「Application Log WARNING」に依存関係を設定すれば複数のイベントを抑止することができると考え
抑止対象として追加した、イベントソース「TEST_APP_WA_1」+イベントID「101」を発生させたところ想定どおり無視されましたが
「TEST_APP_WA_2」+イベントID「102」を発生させた所、トリガー「Application Log WARNING」が障害を検知してしまいました。
複数の依存関係は設定できないのかと思い、「Application Log WARNING IGNORE EVENT 2」だけにして「TEST_APP_WA_2」+イベントID「102」を
発生させた場合もトリガー「Application Log WARNING」が障害を検知してしまいました。
調べてみるとどうやら「Application Log WARNING」「Application Log WARNING IGNORE EVENT 2」の両トリガーで障害を検知してしまっている様でした。
トリガーの依存関係が設定してある場合、依存先で障害を検知した場合は依存元のアクションは起こさないという認識なのですが
トリガーの依存関係を設定する上で何か仕様的にNGな部分があるのでしょうか。
どなたかご教授いただけると幸いです。
よろしくお願いいたします。
TNK - 投稿数: 4742
トリガーの依存関係の利用は、継続的に障害が発生している場合に、
明らかにその障害によって他の障害が発生するような場合に利用す
ると有用だったと思います。
例えば、ネットワーク機器が故障してしまった場合に、そのネット
ワーク機器を経由して監視していたりするものに対して依存関係を
設定しておくことで、実際には故障していないがネットワーク経由
で接続できない監視対象に関して、障害のトリガー発生やアクショ
ン実行を抑制することができます。
今回は、1つのイベントログに対して、複数トリガーの組み合わせ
で複合条件のトリガーとして機能させたいのだと思われるのですが、
トリガーの式は、イベントが発生した際に、依存関係の上位から評
価されるとは限らなかったと思います。
つまり、タイミングの問題で、依存関係を設定しても上位のトリガ
ーが障害になる前に、下位のトリガーが処理され、上位が障害では
ないために、そのまま式が評価されてアクションが実行されてしま
ったのではないでしょうか。
条件式の文字数制限もあったと思うので実現できないかもしれませ
んが、トリガーの条件式で抑止条件も合わせた条件式を記述された
方が複数条件を組み合わせたトリガーを実現するためにはより確実
だと思います。
kameo - 投稿数: 3
ご返信ありがとうございます。
>条件式の文字数制限もあったと思うので実現できないかもしれませ
>んが、トリガーの条件式で抑止条件も合わせた条件式を記述された
>方が複数条件を組み合わせたトリガーを実現するためにはより確実
>だと思います。
上記につきましては、検証を行ったのですが、
思った動作を行ってはくれませんでした。
イベントログとIDのソースを紐づけての抑止は無理なのでしょうか。