ログ監視で指定時間内に検知した文字列全てをアクション(メール本文に全て)記載する方法について
お世話になります。
下記のアイテム設定とトリガーを利用した場合に
検知したエラー内容をメール本文に全て記載したいのですが、いい方法はないでしょうか。
ZABBIXサーバ:2.4.1
※クライアントも同じバージョン
現在の設定
=======================
アイテムキー
log[/var/log/messages,@messages]
アイテム更新間隔:300秒
トリガー条件式
(({master_common:log[/var/log/messages,@messages].iregexp(error|fail|Link is Up|Link is Down)})<>0) and (({master_common:log[/var/log/messages,@messages].nodata(60)})=0)
障害イベントを継続して生成 = しない(チェックしていない)
アクション設定
Trigger: {TRIGGER.NAME}
Trigger status: {TRIGGER.STATUS}
Trigger severity: {TRIGGER.SEVERITY}
Date/Time: {EVENT.DATE} {EVENT.TIME}
{ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1})
{ITEM.VALUE1}
説明:
{TRIGGER.DESCRIPTION}
=======================
上記の設定の場合、
ERROR - 2016-04-16 14:03:16 - 書きこみに失敗しました
ERROR - 2016-04-16 14:04:16 - 書きこみに失敗しました
ERROR - 2016-04-16 14:05:16 - 書きこみに失敗しました
と3つのエラーをトリガーで検知しても最初の一つ目のエラー内容しかメール本文に記載されません。
アクション設定で、 {ITEM.VALUE1} 、 {ITEM.VALUE2}、 {ITEM.VALUE3}と設定すれば
3つのエラーが記載されることは確認しているので、
例えば、これが2件しか発生しなかった場合、10件、20件も発生した場合に全てのエラー内容をアラート本文に記載したいです。
よろしくお願い致します。
TNK - 投稿数: 4769
残念ながら、そのようなことを設定だけで対応する方法は思いつき
ませんでした。
独自のメディアスクリプトを作成し、APIなどを利用して履歴情報
をメール本文に添付するようなものを作成することを検討されてみ
てはいかがでしょうか?