障害メッセージのクローズについて

お世話になっております。

ログ監視で検知したメッセージのクローズを一定秒数後に自動で行いたいと考えております。

nodata()は一定時間メッセージの検知が無ければ自動クローズされると調べたのですが、
追加のメッセージ検知に関わらずメッセージをクローズしてしまいたいです。

now()やtime()では、現在の時刻が取得できますが、障害メッセージが発生した時刻との比較が出来ないように思います。

何か良い方法がありましたらご教授いただけますと幸いです。

==========
OS:RHEL7.6
zabbix:4.4
==========

コメント表示オプション

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

現在どのようなトリガーを設定されているのか、可能な範囲で情報
をご提供ください。

TNK様

以下が現在設定しているトリガーとなります。

=============================================
障害の条件式:{test001:log[/var/log/messages,,,,skip].regexp(test)}=1
正常イベントの生成:条件式
障害イベント生成モード:複数
正常時のイベントクローズ:すべての障害
=============================================

トリガーで検知した障害メッセージをアクション機能を使用して、上位監視サーバへ転送しています。
障害メッセージは、アクションが実行されてしまえば不要となるため、一定秒数後に自動クローズするような
仕組みを実装できればと考えております。

ユーザー TNK の写真

一例です。
アイテムで正規表現を指定していれば、以下のような設定が考えら
れます。

条件式:{test001:log[/var/log/messages,"test",,,skip].regexp("test",300)}=1
正常イベントの生成:復旧条件式
復旧条件式:{test001:log[/var/log/messages,"test",,,skip].nodata(300)}=1
障害イベント生成モード:複数
正常時のイベントクローズ:すべての障害

この設定で、ログが出力されなければ5分後に自動的にトリガーの
状態は正常に戻ると思います。

regexp()に第2引数を設定し、同じ値(時間)をnodata()の引数とし
た復旧条件式を組み合わせる方法で、この設定例では300秒(5分)間、
ログが出力されなければ、トリガーが自動的に正常に戻ります。

これは、昨年のZabbixカンファレンスで発表された資料内で紹介さ
れていたものです。

ご参考:「サポート最新動向」 P.13参照
https://www.zabbix.com/jp/events/conference_japan_2020_agenda#day2_1200

アイテムで正規表現を指定しなかった場合は、ログに何らかの出力
がされ続けるとトリガーの状態が正常に戻らないのと、それ以外の
問題がないか確認が必要です。

TNK様

ご回答ありがとうございます。

上記内容を参考にさせていただき、検証を実施しようと思います。