注)本ページで紹介しているhubot-mackerel-notifierは現在メンテナンスしておらず、非推奨です。
Hubotスクリプトのhubot-mackerel-notifierを利用すると、Mackerelからのアラート通知のWebhookを受けとり、IRCやSlackなどのチャットツールに次のような通知を流すことができます。(SlackにはHubot経由ではなく直接送ることもできます。詳しくはSlackにアラートを通知するを参照してください。)
17:06 hubot: [Mackerel] CRITICAL: IOwait at app01 (working) Service: app https://mackerel.io/orgs/.../alerts/...
またホスト名に反応してホスト詳細ページへのリンクを表示させることができます。
Webhookのリクエスト先URLのパスは/hubot/mackerel
を設定してください。例えば、hubotをhttp://some-hubot.herokuapp.com/
にセットアップしている場合、WebhookのURLはhttp://some-hubot.herokuapp.com/hubot/mackerel
とします。
WebhookのURL設定の詳細については、監視・通知を設定するを参照してください。
Hubot本体の詳細やインストール方法については、公式ドキュメントや解説記事などを参照してください。
Hubotにhubot-mackerel-notifierを追加する
- hubot-mackerel-notifierをインストールします。
npm install hubot-mackerel-notifier --save
hubot-mackerel-notifier
をexternal-scripts.json
に次のように追加します。
["hubot-mackerel-notifier"]
- リポジトリにコミットします。
git commit -a -m 'add hubot-mackerel-notifier' git push
- 環境変数を設定します。例(Herokuの場合):
heroku config:add HUBOT_MACKEREL_API_KEY="..." heroku config:add HUBOT_MACKEREL_HOST_REGEXP="\\b[a-zA-Z0-9._-]+[.]local-domain\\b" heroku config:add HUBOT_MACKEREL_ORG_NAME="example" heroku config:add HUBOT_MACKEREL_NOTIFIER_ROOM="#general"
- Hubotにデプロイします。例(Herokuの場合):
git push heroku master
- Enjoy!!