誰でも ZABBIX

Zabbixの使い方、役に立つ情報、等々

3. not supportedになったトリガーの解除

接続できなくなった監視ホストがトリガーを発行している状態の時、監視データにアクセスできなくなってもそのエラー状態はずっと表示されたままになります。

f:id:Unam:20180106102014p:plain

接続できなくなったアイテムのトリガーをクリア

外付けのストレージをLLDで監視している場合、「使用中(電源ONの間)はトリガーを表示してほしいがオフの間はトリガーも表示したくない」 という場合、以下の方法があります。

  1. LLDの保存期間を0日にする(アクセスできなくなったら即アイテムを削除)
  2. 手動でマニュアルをクリアする
  3. nodata()でアイテムの状態をチェックする

以前は、1の方法しかありませんでしたが、監視データもクリアされてしまうためあまり使いたくない場合もあります。

Zabbix3.2から、2と3の方法も追加され、処理の選択幅が広がりました。今回は、nodata関数を使った例を紹介します。

トリガー条件にnodata関数を追加

以下のトリガーは、LLDで検知したドライブの使用量をチェックするトリガーです。通常のチェック条件に、nodata関数でデータが定期的に受信できているかどうか、という条件を追加しています。 f:id:Unam:20180106103609p:plain

nodata(1h)=0 →指定した時間にデータが来ていれば0(条件に合致)

nodata関数は、データが取得できない間も、Zabbix Serverが定期的に関数の評価を行うので、接続的なくなってから一定時間後(この例の場合は1時間後)にトリガーはクリアされます。

LLDのドライブをはずした状態
f:id:Unam:20180106104113p:plain

データが来なくなる
f:id:Unam:20180106104159p:plain

しばらくするとnodata関数の設定により、トリガーがクリアされる f:id:Unam:20180106104219p:plain

トリガー解除条件にnodata関数を記載

トリガー条件はフラッピング防止のため、解除条件を別途設定するケースも多いです。Zabbix3.2から、解除条件を別途シンプルに指定できるようになったので、そこにnodata関数を記載してみました。
f:id:Unam:20180106104924p:plain

解除条件の方に記載しているので、nodataの条件は1(一定期間データが来なかった)にしています。 こちらの記載ではトリガーが解除されませんでした。 nodataの評価は、あくまでもトリガー設定条件のみ有効なようです。