イベントログ監視のフィルター制限について
いつもお世話になっております。
下記につきましてご教授頂きたく宜しくお願い致します。
ーーーーーーーーーーーーーーーーー
環境
ZabbixVer :2.4.8
※サポート切れなので年内にUpdate予定
OS :CentOS6.2
ーーーーーーーーーーーーーーーーー
以下のアイテムキーと正規表現で不要なログを拾わないようにしています。
アイテムキー:eventlog[Application,@applog_filter,,,,,skip]
正規表現:applog_filter
1.TEST [結果が偽]
2.WARNING[結果が偽]
3.AWS SSSERA WATHER: 更新履歴 \'TESTSERVER\.AWSSPRODBDProcessingServer\' は応答がないため、クローンにマーニングされています。
このうち3について、正規表現のテストで対象となるメッセージをテストすると問題無く動作するのですが、
実際にイベントログに出力されるとログを拾ってしまいます。(対象メッセージが出力されても判定が偽にならない。)
制限を確認すると以下の記載があります。
⇒ログファイルレコードが256kBよりも長い場合、最初の256kBのみが正規表現と照合され、レコードの残りは無視されます。
https://www.zabbix.com/documentation/2.2/jp/manual/config/items/itemtype...
ただ、実際は256kbもログの文字数が無いため、なぜ正規表現のテストでは問題無いのに
実際の動作では正規表現が効かないのか原因がわかりませんでした。
同様の事象が稀に発生しており、正規表現で指定している文字数等を減らせば正常に動作したりするのですが、
原因にお心当たりはある方はおられますでしょうか。
Yasumi - 投稿数: 380
おそらくは記号や空白のどこかで不一致が発生していると思われますね。
少々不格好ではありますが、下記のように「.*」で代替してみることで被疑箇所を特定してみてはどうでしょうか。
AWS.*SSSERA.*WATHER.*更新履歴.*TESTSERVER.*AWSSPRODBDProcessingServer.*は応答がないため、クローンにマーニングされています。
kaeru - 投稿数: 263
>>Yasumi様
ご回答ありがとうございます。
>おそらくは記号や空白のどこかで不一致が発生していると思われますね。
文字コードや、DBの仕様で何かしら齟齬が発生する可能性は確かにありそうな気がしてきました。
(そういえば過去、ヒストリに入っていた値をそのままフィルタ用の値として使用したのに一致しないことがありました。)
頂いた内容にて正規表現を差し替え、問題が無い事を確認致しました。
重ねてご回答ありがとうございました。