🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら

Q&A

解決済

1回答

3446閲覧

エラーログのエラーレベルでのみZabbixでアラートを上げたい

haniwa9821

総合スコア13

0グッド

0クリップ

投稿2019/09/10 06:02

前提:Zabbix 3.0.10を使用中

やりたいこと
社内アプリケーションのログに記載してある"エラーレベル"によってアラートを上げたい。

困っていること
本文にERRORやCRITICALの文字列があっても反応してほしくない。

やったこと
トリガーの文字列を[ERROR]と[CRITICAL]とした。
アイテムの絞り込み文字列にも[]を付けて[ERROR]と[CRITICAL]のみを対象とした

本文にERRORやCRITICALがあっても反応しないようにしたいです。
お手数をおかけいたしますが、ご教示願います。


以前設定されていたトリガー
CRITICAL用
{LogWatch_stg_unitname:log[/var/log/unitname/app.log,ERROR|CRITICAL].str("[CRITICAL]")}=1
ERROR用
{LogWatch_stg_unitname:log[/var/log/unitname/app.log,ERROR|CRITICAL].str("[ERROR]")}=1


設定したトリガー
CRITICAL用
{LogWatch_stg_unitname:log[/var/log/unitname/app.log,"[ERROR]|[CRITICAL]"].str("[CRITICAL]")}=1
ERROR用
{LogWatch_stg_unitname:log[/var/log/unitname/app.log,"[ERROR]|[CRITICAL]"].str("[ERROR]")}=1



テストで書き込んだ文字列
sudo echo "[$(date "+%Y-%m-%d %H:%M:%S")][ERROR][9821][Testmsg:32] infratest12" >> app.log
sudo echo "[$(date "+%Y-%m-%d %H:%M:%S")][INFO][9821][Testmsg:32] ERRORMESSAGE" >> app.log
sudo echo "[$(date "+%Y-%m-%d %H:%M:%S")][CRITICAL][9821][Testmsg:32] infratest34" >> app.log
sudo echo "[$(date "+%Y-%m-%d %H:%M:%S")][INFO][9821][Testmsg:32] CRITICALMESSAGE" >> app.log


フォーマット
[20yy-mm-dd hh:mm:ss][エラーレベル][プロセスID][class名] メッセージ
サンプル
[2019-09-10 14:01:07][ERROR][1234][Testmsg:56] testmessage

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

rogueref

2019/09/18 05:07

質問内容がよくわかりません。例として示されている [2019-09-10 14:01:07][ERROR][1234][Testmsg:56] testmessage これのどの部分が"エラーレベル"を示しているのでしょう
haniwa9821

2019/09/20 02:32

フォーマット [20yy-mm-dd hh:mm:ss][エラーレベル][プロセスID][class名] メッセージ にもある通り、日付の後ろ[ERROR]がエラーレベルです。
guest

回答1

0

ベストアンサー

[]で囲まれた第二カラムだけをチェックしたいということですね。
logのフィルター文字列の適切な正規表現をかけばいいかと思います。

log[/var/log/unitname/app.log,'[.*][(ERROR|CLITICAL]']

正規表現はgrepで確認していますが、かぎかっこあたりのエスケープはzabbixキー中に入るとすこし違うかもしれません。
試してみてください。

投稿2019/09/24 07:05

rogueref

総合スコア727

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

haniwa9821

2019/09/25 02:17

そのまま入力して保存しようとしたところ、構文エラーとなってしまいましたが 既存のキーにあるカギ括弧にエスケープ文字を入れてみたところエラーにならずエラーレベルの仕分けもうまくいっているようです。 取り急ぎ大丈夫そうなので、コレで様子を見たいと思います。 ヒントをいただきありがとうございました。
haniwa9821

2019/09/25 02:18

記載した構文は以下の通りです。 log[/var/log/unitname/app.log,"[ERROR]|[CRITICAL]"]
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問