mattermost-community / mattermost-plugin-aws-SNS

Plugin that receives SNS notification from Alerts created by AWS CloudWatch and sent via AWS SNS
Apache License 2.0
21 stars 22 forks source link
aws golang hacktoberfest mattermost mattermost-plugin sns sns-notifications

Disclaimer

This repository is community supported and not maintained by Mattermost. Mattermost disclaims liability for integrations, including Third Party Integrations and Mattermost Integrations. Integrations may be modified or discontinued at any time.

AWS SNS Plugin

Build Status Code Coverage Release HW

Maintainer: @mickmister Co-Maintainer: @jfrerich

This plugin is used to send alert notifications from Amazon AWS CloudWatch to Mattermost channels via AWS SNS. RDS Event processing is also supported.

Originally developed by Carlos Tadeu Panato Junior.

image

Configuration

Step 1: Configure plugin in Mattermost

  1. Go to System Console > Plugins > AWS SNS.

    1. Set the channel to send notifications to, specified in the format teamname,channelname. If the specified channel does not exist, the plugin will create the channel for you. If you want to specify more than one channel, you can append them separated by ; e.g. teamname,channelname;teamname-2,channelname-2

    2. Set authorized users who can accept AWS SNS subscriptions. Must be a comma-separated list of user IDs.

      • Note: This is the user ID of the user, not the username.
      • Tip: Use the mmctl user search CLI tool to determine a user ID. The user ID can also be found in the list of users in the System Console by searching for the user you wish you add.
    3. Set the username that this integration is attached to.

    4. Generate a token used for an AWS SNS subscription. Copy this value as you will use it in a later step.

  2. Go to System Console > Plugins > Management and select Enable to enable the AWS SNS plugin.

Step 2: Configure plugin in Amazon AWS

  1. Create an AWS CloudWatch alarm for your instance.
  2. Create an AWS SNS Topic with an HTTPS subscription to [https://your-mattermost-url/plugins/com.mattermost.aws-sns?token=your-mattermost-token&channel=teamname,channelname](), where your-mattermost-url refers to your Mattermost URL, and your-mattermost-token was generated on a previous step. The channel query parameter specifies the channel that should receive the subscription/messages. If no channel parameter is passed, the first channel will be used as default. Follow this documentation for additional configuration options.
  3. Switch to the Mattermost channel you configured to receive notifications.
  4. Select Confirm to accept the subscription posted to the channel.
  5. Configure your AWS CloudWatch Alarms to use the topic you created previously.

You're all set! Alerts should now get posted from AWS CloudWatch to Mattermost.

Development

This plugin contains a server portion. Read our documentation about the Developer Workflow and Developer Setup for more information about developing and extending plugins.

Releasing new versions

The version of a plugin is determined at compile time, automatically populating a version field in the plugin manifest:

To disable this behaviour, manually populate and maintain the version field.