Skip to main content

How to Send Slack Notifications

Fix Inventory constantly monitors your infrastructure, and can alert you to any detected issues.

One way to receive these alerts is via Slack. In this guide, we will configure Fix Inventory to send alerts to a Slack channel.

Prerequisites​

This guide assumes that you have already installed and configured Fix Inventory to collect your cloud resources.

Directions​

  1. Create an Incoming Webhook in Slack.

  2. Install the slack infrastructure app using the app install command:

    > app install slack
  3. Define search criteria for which to trigger an alert. For example, let's say we have an account called test-account where instances with more than 4 GB of RAM are not permitted:

    > search is(instance) and instance_memory>4 and /ancestors.account.reported.name==test-account
  4. Pipe the result of the search query to the slack app with your desired alert text and Slack webhook URL:

    > search is(instance) and instance_memory>4 and /ancestors.account.reported.name==test-account | slack --title="Large instances found in test-account" --webhook="https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"

    If the defined condition is currently true, you should see a new message appear in Slack:

    Example Slack alert

    tip

    A default webhook URL can be defined in the slack app configuration so that you can simply execute slack --title="...":

    > config edit fix.apps.slack
  5. To automate the alerts, create a job:

    > jobs add --id notify_large_test_instances --wait-for-event post_collect 'search is(instance) and instance_memory>4 and /ancestors.account.reported.name==test-account | slack --title="Large instances found in test-account" --webhook="https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"'

Further Reading​