取得したテキストに当日日付が含まれているかチェックしたい
アイテム(データ型:文字列)の値で日付(yyyymmdd)が含まれている箇所があるが、
その日付が当日から3日以内の日付であれば正常、それ以前であれば障害として検知するトリガーを作成したいです。
ご教示頂けますでしょうか。
■構成
・Zabbix Server:4.0.3
・Zabbix Agent:4.0.3
・監視機器:Windows Server 2012R2
・監視対象:Zabbixエージェントのユーザパラメータ機能を使って、reg query コマンドで特定のレジストリの値を取得しています。
■アイテム設定
タイプ:Zabbixエージェント
データ型:文字列
実際の値はレジストリのパス、項目名とレジストリの値である日付が含まれています。
『●●●\●●●\●●●\●●●\●●●\●●●\●●●
●●● ●●● yyyymmdd 』
■実現したい内容
yyyymmddが当日日付から3日以内であれば正常、それ以前の場合は障害として検知する。
実現可能な方法があればご教示頂けますでしょうか。
以上、よろしくお願いいたします。
kz999 - 投稿数: 24
テキストの日付部分が3日以内かどうかをzabbix標準の機能で判定するのは無理なんじゃないでしょうか。
自分なら外部チェック使って、シェルに判定させる方法で実現する、くらいしか思いつきません。
外部チェックの設定例はこのあたり参考に
https://www.zabbix.com/documentation/2.2/jp/manual/config/items/itemtype...
http://unam.hatenadiary.jp/entry/2018/02/05/183135
シェル内で「zabbix_get -s <対象IP> -k <ユーザパラメータのkey>」を実行し
その応答結果から日付部分を抜き出して判定、
結果を0か1で出して数値判定するか、
Error: yyyy/mm/dd などと出力させて「Error」を文字列判定する感じ、
でしょうか。
muck_1224 - 投稿数: 5
ご回答ありがとうございます。
助言頂いた外部チェックで対応してみたいと思います。