0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Mackerelのログ監視で日本語の文字列をキーワードにする

Last updated at Posted at 2017-03-31

概要

ログ監視は、ログファイル内の特定の文字列を検出するとアラートを出すのが一般的ですが、Mackerelのログ監視(check-logプラグイン)で日本語の文字列をキーワードにする場合、設定にひと手間必要でした。

やること

  1. mackerel-agent.confUTF-8で作成する
  2. --encodingでログファイルの文字コード指定する

手順

mackerel-agent.confをUTF-8で作成する

検出したい文字列に日本語(全角文字)を含む場合、設定ファイル自体のエンコーディングをUTF-8にする必要があります。
ここがはまりどころです。テキストエディタなどを使ってUTF-8で保存しましょう。

Windowsの場合コンフィグは以下にあります

C:\Program Files (x86)\Mackerel\mackerel-agent\mackerel-agent.conf

--encodingでログファイルの文字コード指定する

ログファイルの文字コードを指定します。
今回監視するのはWindowsに保存されたログファイルなので文字コードはSJISを指定しました。
検出したいキーワードは"ネットワークエラーが検出されました"です。

できあがり

mackerel-agent.conf
(中略)
[plugin.checks.log]
command = '''check-log.exe --file C:\log\test.log --pattern ネットワークエラーが検出されました --encoding Shift_JIS --return'''

--returnオプションはキーワードを含む行をMackerelへ送信してくれます。
そのためEndToEndで暗号化されているとはいえ、個人情報やアカウントを含む行は注意が必要です。

アラート

キーワードを検出するとMackerelのAlertsへ以下のように表示されます。

3.png

"ネットワークエラーが検出されました"を含む行も表示されました。

参考:encordingオプションで指定可能な文字コード

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?