esanchezm / amazon-cloudwatch-to-slack

Relay alerts from Amazon CloudWatch to a Slack.com room.
GNU General Public License v2.0
63 stars 10 forks source link

Amazon CloudWatch to Slack

Relay alerts from Amazon CloudWatch to a Slack room.

This code is 100% based on Amazon CloudWatch to Hipchat and it could not be possible without it.

Setup

Requirements:

Deploy your application to to Heroku:

cd /path/to/wherever
git clone https://github.com/esanchezm/amazon-cloudwatch-to-slack.git

cd amazon-cloudwatch-to-slack
heroku apps:create
heroku config:set 'SLACK_WEBHOOK_URL=https://hooks.slack.com/services/XXXXXXXXX/XXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX'
git push heroku master

You can optionally set a diferent slack channel, username or avatar to customize messages:

heroku config:set SLACK_CHANNEL=#yourchannel\
                  SLACK_USERNAME="AWS CloudWatch" \
                  SLACK_ICON_URL="http://www.example.com/bot_avatar.png" \
                  SLACK_ICON_EMOJI=":ghost:"

Notice that SLACK_ICON_URL and SLACK_ICON_EMOJI are mutually exclusive.

Additional configuration parameters for SES notifications:

heroku config:set SLACK_SES_CHANNEL=#otherchannel\
                  SLACK_SES_USERNAME="AWS SES" \
                  SLACK_SES_ICON_URL="http://www.example.com/bot_avatar.png" \
                  SLACK_SES_ICON_EMOJI=":ghost:"

Or just push the button:

Deploy

Setup Amazon SNS:

Setup Amazon CloudWatch: