監視の時間設定について

お世話になります。

現在、

Zabbixサーバ 2.2.8

にて各ホストをzabbix-proxyとzabbix-agentを使って監視を行っています。

この環境で監視対象となっているホストAについてご相談させて下さい。

ホストAはOSがCentOSでウィルスチェックの為、毎晩23:00にフルスキャンを行っております。
フルスキャンが行われたタイミングで、下記のトリガーに引っかかりアラートが出てしまいます。

「トリガー」
名前 Disk I/O is overloaded on {HOST.NAME}
条件式 {ホスト名:system.cpu.util[,iowait].avg(5m)}>20

こういった場合、0:00~23:00は上記トリガーを使用し、23:00~24:00だけ別のトリガーを使用するといったことは
可能なのでしょうか?
もしくは、他に良い方法はありませんでしょうか?

よろしくお願い申し上げます。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

Zabbix標準の機能だけでは、時間帯によってトリガーの閾値を変更
することはできません。
標準の機能だけで実現するとしたら、メンテナンス期間の設定を行
って、特定の時間帯に発生した場合には通知をしないということを
実現することができます。

APIを利用して変更することも可能だとは思いますが、その処理を
フルスキャンの前後に実行しなければなりません。
他のツールと組み合わせてということであれば、

 HyClops JobMonitoring

というツールを利用して、SOS JobSchedulerというOSSのジョブス
ケジューラとZabbixを連動させて、ジョブ実行時の閾値変更ができ
るような機能を実現されているようですので、そういったものを活
用されるのも良いかもしれません。

標準機能だけで簡単に実現するのであれば、メンテナンス期間の設
定の利用をご検討ください。

ご参考:
 HyClops JobMonitoring
  http://tech-sketch.github.io/hyclops_jm/jp/

ユーザー KAZ の写真

naoki.iさん

time関数使ってみては?
閾値はお好きな値に変えてください。

■00:00:00~23:00:00のトリガー
{ホスト名:system.cpu.util[,iowait].avg(5m)}>20 &
({ホスト名:system.cpu.util[,iowait].time(0)}=000000 |
({ホスト名:system.cpu.util[,iowait].time(0)}>000000 & {ホスト名:system.cpu.util[,iowait].time(0)}<230001))

■23:00:01〜23:59:59のトリガー
{ホスト名:system.cpu.util[,iowait].avg(5m)}>20 &
({ホスト名:system.cpu.util[,iowait].time(0)}>230000 & {ホスト名:system.cpu.util[,iowait].time(0)}<235959)

ユーザー TNK の写真

time関数を利用される際、フルスキャンに時間がかかってしまって、
終了が0時を超えるようになってしまった場合には、さらに別の時間
帯の条件も必要になると思いますのでご注意ください。

ユーザー naoki.i の写真

TNK様
KAZ様

ご教示ありがとうございます。
お二方からの情報をもとに、色々検証してみたいと思います。

取り急ぎ、お礼申し上げます。