トリガーで一致した文字列を参照したい
いつもお世話になっております。
バージョン:Zabbix2.2.7
OS: CentOS 5.4
[アイテム]
タイプ:Zabbixエージェント(アクティブ)
キー: log[/var/log/zabbix/zabbix_server.log]
データ型: ログ
更新間隔: 30(秒)
[トリガー]
条件式:{servename:log[/var/log/zabbix/zabbix_server.log].count(90, "first network error", "like")} > 2
上記内容で一致した際にアクションでメールを送付するように設定しています。
メールには
{ITEM.VALUE}
と、検知した文字列を入れるようにしているのですが、なぜかメールには実際に一致した文字列ではなく
条件に一致しない文字列が挿入されてしまいます。
トリガーに一致した文字列を参照するにはどう指定すればよいのでしょうか。
TNK - 投稿数: 4769
条件式で書かれている式を見る限り、過去90秒間に指定された文字
列が3件以上含まれているかという条件なので、その時点で過去90
秒内に含まれていればいいので、その時点の最後の行に指定された
文字列が含まれるとは限りません。
例えば、指定された文字列を含むログが大量に出力された直後に、
housekeeperの処理が実行されたログが出力されたら、housekeeper
のログが{ITEM.VALUE}の値としてアクションに引き渡されるでしょ
う。
トリガーが発生する条件として、指定した文字列が含まれる行が出
力されたときであることも条件とされたいのであれば、条件式にそ
の条件を追加してみてください。
ogata - 投稿数: 28
返信が遅れて申し訳ありません。
ご指摘の通り、指定文字列が含まれているときという条件をANDで追加し、期待通りの動作になりました。
ありがとうございます。