連続して検知した場合をあらわすトリガーについて
OS:CentOS 6.5
Zabbixサーバ:2.2.11
エージェント:2.2.7
ロードアベレージの値をみて、0.8以上を2回連続で検知したらメールを飛ばすようにしたい為、以下のようなトリガーを作成しました。
{Resource Template Linux:system.cpu.load[percpu,avg1].count(#2,0.8,"ge")}=2
※この条件の場合、「直近2個」の値の中で「0.8以上」の値の出現回数が「2回」という意味であってますでしょうか。
メールが飛んできたため値を確認すると、以下のようになっていて、
1回0.8以上を検知したら動作したようで、意図した通りに動作していないようです。
※アラートの発生時刻は、02:15:03でした。
”0.8以上を2回連続で検知”という条件にしたいのですが、どこが誤っているのでしょうか。
どのような条件を設定すればよいかご教示いただけないでしょうか。
■収集された値
2016/09/28 02:25:03 0.64
2016/09/28 02:20:03 0.6
2016/09/28 02:15:03 0.835 ★ここでアラート
2016/09/28 02:10:03 0.6
2016/09/28 02:05:03 0.32
2016/09/28 02:00:03 0.25
fripper - 投稿数: 495
以下のようなトリガー式ではいかがでしょうか?
[ item ].min(#2) > 0.8
トリガー式だけを見ると意図したところが伝わりにくいのですが、
「直近2回のデータで、最小値を計算したら 0.8 を超える」
すなわち
「直近2回とも、0.8 以上の値」
という意味合いになるかと思います
kasugai - 投稿数: 72
fripper様
回答頂きありがとうございます。
countの条件式で上手くいかない原因はまだ分かっていませんが、minを使った条件式にして、様子を見てみます。