同時に出力されたテキストログの処理について

いつもお世話になっております。

#Zabbixのバージョン:1.8.16
#ZabbixサーバのOS:CentOS
#ZabbixエージェントのOS:Windows2008

以下のように同時に捕捉すべきログが吐かれました。
--------
①N013 Apr 28 22:45:01 [4764] KAVS0279-E AJSROOT1:/Enterprise/処理名A......
②N013 Apr 28 22:45:01 [4764] KAVS0279-E AJSROOT1:/Enterprise/処理名B......
--------
メールは
①について送信されましたが②は送信されませんでした。

これは「仕様」でしょうか?

以上
よろしくお願いいたします。

コメント表示オプション

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

dba43986さん

同時(1秒以下の差)に出力されたログについてのおかしな動作ですが、Zabbix2.0から対応されております。
Zabbix2.0より前のバージョンでは誤動作する場合があります。

ユーザー TNK の写真

複数のログで連続してエラーを検知するようトリガーが設定されて
いるのであれば、すでにKAZさんが回答されている通り、Zabbix 2.0
以降でなければ、それぞれのログに対応したログデータをメールの
メッセージ内に取り込めない問題があるので、より新しいZabbixの
バージョンを利用することをご検討ください。

別の可能性として、どのようなトリガーを設定されていますか?

ログの行ごとにトリガーを発生させたいのであれば、トリガーの
設定内の「イベント生成」として「ノーマル + 障害イベントを
継続して生成」を選択されていますか?

「ノーマル」を選択されていた場合は、トリガーが障害状態にな
っていると、同じトリガーで障害と判定されてもイベントを発生
しませんのでご注意ください。

ユーザー gikoprivate の写真

横から失礼します。
3.0.0-1を使用しているのですが同様に複数検知できません。
(バージョンはあげられないです。お察しください。)
zabbix_server.confや、agent.confで必要な設定があるのでしょうか?

同一時間に上がったログは一つにまとめられてzabbixGUIに出力され、アクションも一件分で処理されています。

すみませんがお知恵を拝借できれば。

よろしくお願いします。

ユーザー TNK の写真

具体的にアイテムやトリガーにどのように設定されているのかをお教えください。

ユーザー gikoprivate の写真

TNKさん

アイテムには以下を設定しています。

タイプ Zabbixエージェント(アクティブ)
キー log[/var/log/messages,error|Error|ERROR,UTF-8]
データ型 ログ
更新間隔 60秒

トリガーは冗長になっていますのである程度省略させていただきますが、以下のように設定しています。

({TemplateHoge:log[/var/log/messages,error|Error|ERROR,UTF-8].regexp("error|Error|ERROR")}=1)and({,TemplateHoge:log[/var/log/messages,error|Error|ERROR,UTF-8].nodate(30)}=0)

これで大丈夫でしょうか。
すみませんがよろしくお願いします。

ユーザー TNK の写真

ご提示頂く情報が不十分です。

例えば、トリガーの設定で、

 障害イベントを継続して生成

にチェックは入っていますか?

入っていなければ、行ごとにトリガーイベントを発生させて、それ
ぞれのメールを通知するようなことは不可能です。

ユーザー gikoprivate の写真

TNKさん

情報不足すみません。
頂戴した回答の障害イベントを継続して生成にチェックを入れたら
無事複数件取得できました。

ですが、一件余分に検知するようになりました。
ポーリング間隔に問題かと思いアイテムの取得間隔を一秒に設定したのですが解決していません。

同時刻に発生、拾いたいアラートA
同時刻に発生、拾いたいアラートB
同時刻に発生したABのアラートをまとめて一件として検知

となっており、二件(A、B一件ずつ)拾えればいいところ合計で三件拾ってしまっています。

ユーザー TNK の写真

まとめて1件として検知というのが、具体的にどのような
現象が発生しているのか詳細にお教えください。

ユーザー gikoprivate の写真

TNKさん

15:30:55 メッセージAをsyalogに出力しエラーとステ検知
15:30:55 メッセージBをsyslogに出力しエラーとして検知
15:31:00 何もメッセージを出力していないが、エラーとして検知(障害イベントを継続して生成のチェックを入れていなかったときの振る舞い?)

伝わりますでしょうか。
トリガーの設定は変更していません。

ユーザー TNK の写真

どのような現象が発生しているのかがまったく分かりません。

「障害イベントを継続して生成のチェックを入れていなかったときの振る舞い?」
とは具体的にどのような現象や状態なのですか?

恐らくですが、nodata()の条件に合致してイベントが発生している
のではないかと思われます。

以下のURLにnodata()を使用する際の問題点を書いてあるのでご参照
ください。

 Windowsログ監視の設定について
   http://www.zabbix.jp/node/2758

ユーザー gikoprivate の写真

TNKさん

誘導ありがとうございます。
読んできました。

予想されたとおりnodata()の評価で上がったものと思われます。

15:30:55 メッセージAをsyalogに出力しエラーとして検知
15:30:55 メッセージBをsyslogに出力しエラーとして検知
15:31:00 nodata(30)による評価によってエラーとして検知

nodata()をトリガーに含めている以上、自動でトリガーステータスを正常にできますが、拾いたい回数に制限できる訳ではないという事、理解できました。

手動でトリガーを復旧させられるようにはなったのでしょうか。
聞いてばかりですみませんがご回答いただければ幸いです。

よろしくお願いします。

ユーザー TNK の写真

手動でのトリガーのクローズは、3.2の新機能です。

ただし、3.2はポイントリリースですので、サポート期間が短くな
っています。
3.4がリリースされたら、その1ヶ月後にサポートが終了します。

サポートの短いバージョンですので、長期間使用したいという環境
にはお勧めしません。
http://www.zabbix.com/jp/life_cycle_and_release_policy

ユーザー gikoprivate の写真

TNKさん

回答ありがとうございます。
サポート期間含めて考えたいと思います。