Zabbix2.4.6でwebシナリオ失敗→トリガーまで行くが、アクションが実行されない
Zabbix server v2.4.6のユーザーです。
web-watch-testというwebシナリオで、適当な存在しないページに200のレスポンスを要求し
以下のトリガー を設定しています。
トリガー名: web-watch-test
{zabbix-server:web.test.time[web-watch-test,test,resp].count(#1, 200, "ne")}>2
この設定で問題なく、トリガー が発動されています。
これに紐づくアクションとして、alert-web-watch-testというアクションを設定し、以下を条件にしています。
- メンテナンスの状態 期間外 メンテナンス
- トリガーの値 = 障害
- トリガー名 含まれる web-watch-test
この設定でトリガー名: web-watch-testが発動されると、上述のアクションが実行されると思うのですが、実行できておりません。
何も特別なことはしていないのですが、他のwebシナリオからトリガー するものに対してアクションが実行できておりません。
他のwebシナリオ以外の例えばCPU使用率などに対するトリガー ・アクションは実行できております。
アドバイスいただけないでしょうか。
heya - 投稿数: 319
トリガーが発動されているというのはどうやって確認したのですか?
トリガーの設定で、「障害イベントを継続して生成」にチェックは入っていますか?
→チェックが入っている場合は回復しなくてもトリガーの条件を満たせば毎回障害イベントが発生しますが、チェックが入っていなければ条件を満たしても一旦回復するまでは障害イベントは発生しません。
そもそもですが、web.test.time はかかった時間を返すわけで、200 と比べるのは変だと思います。レスポンスコードを返すのは web.test.rspcode です。さらに、{~.count(#1,200,ne)} は「直近の1 回分のデータのうち 200 でなかった数」なので、これが 2 を超えることは無いはずです。