ログをlogmon で監視してSlackに通知

  • 9
    Like
  • 0
    Comment
More than 1 year has passed since last update.

logmon のインストール

logmon のインストールについては、以前書きました。

http://qiita.com/inouet/items/cc1eacef237f2328e98f

Slack client のインストール

Slack のAPIをcurlで叩いてもいいんですが、もうちょっと簡単な方がいいので、Slack clientを入れてみました。

https://github.com/cleentfaar/slack-cli

$ curl -sS http://cleentfaar.github.io/slack-cli/installer | php
$ sudo mv slack.phar /usr/local/bin/slack

slack コマンドを /usr/local/bin/slack に配置しました。

Slack client 設定

logmon は root で実行されるので、rootに トークンをセットしておきます。

# /usr/local/bin/slack config:set default_token <your-token-here>

logmon 設定

/etc/logmon/logmon.conf

:/home/foo/bar/error.log
(.+)
/usr/local/bin/slack chat:post-message general "<%%%%>" --username=$(hostname) --icon-emoji=bike

1行め、: から始まる行が監視対象のファイル、2行めが監視文字列(今回はなんでもマッチ)、3行めが実行するコマンドです。
<%%%%> のところに2行めの正規表現にマッチした行が入ります。

logmon 再起動

# /etc/init.d/logmon restart

テスト

ログに何か出力してみる

$ echo "test" >>  /home/foo/bar/error.log

Slackに通知されていることを確認。