3. not supportedになったトリガーの解除
接続できなくなった監視ホストがトリガーを発行している状態の時、監視データにアクセスできなくなってもそのエラー状態はずっと表示されたままになります。
接続できなくなったアイテムのトリガーをクリア
外付けのストレージをLLDで監視している場合、「使用中(電源ONの間)はトリガーを表示してほしいがオフの間はトリガーも表示したくない」 という場合、以下の方法があります。
- LLDの保存期間を0日にする(アクセスできなくなったら即アイテムを削除)
- 手動でマニュアルをクリアする
- nodata()でアイテムの状態をチェックする
以前は、1の方法しかありませんでしたが、監視データもクリアされてしまうためあまり使いたくない場合もあります。
Zabbix3.2から、2と3の方法も追加され、処理の選択幅が広がりました。今回は、nodata関数を使った例を紹介します。
トリガー条件にnodata関数を追加
以下のトリガーは、LLDで検知したドライブの使用量をチェックするトリガーです。通常のチェック条件に、nodata関数でデータが定期的に受信できているかどうか、という条件を追加しています。
nodata(1h)=0 →指定した時間にデータが来ていれば0(条件に合致)
nodata関数は、データが取得できない間も、Zabbix Serverが定期的に関数の評価を行うので、接続的なくなってから一定時間後(この例の場合は1時間後)にトリガーはクリアされます。
LLDのドライブをはずした状態
データが来なくなる
しばらくするとnodata関数の設定により、トリガーがクリアされる
トリガー解除条件にnodata関数を記載
トリガー条件はフラッピング防止のため、解除条件を別途設定するケースも多いです。Zabbix3.2から、解除条件を別途シンプルに指定できるようになったので、そこにnodata関数を記載してみました。
解除条件の方に記載しているので、nodataの条件は1(一定期間データが来なかった)にしています。 こちらの記載ではトリガーが解除されませんでした。 nodataの評価は、あくまでもトリガー設定条件のみ有効なようです。