Skip to content

An Incident Management Program that processes Alertmanager alerts and creates incidents in messengers

License

Notifications You must be signed in to change notification settings

eslupmi/impulse

Repository files navigation

Prometheus IMPulse

Visit docs.impulse.bot for the full documentation.

Features

Quick Start

Docker installation example for Slack

  1. Use instructions to create and configure bot

  2. Create directories

    mkdir impulse impulse/config impulse/data
    cd impulse
  3. Get docker-compose.yml and config

    wget -O docker-compose.yml https://raw.githubusercontent.com/eslupmi/impulse/develop/examples/docker-compose.yml
    wget -O config/impulse.yml https://raw.githubusercontent.com/eslupmi/impulse/develop/examples/impulse.slack.minimal.yml
  4. Modify config/impulse.yml with actual data

  5. Replace <release_tag> in docker-compose.yml with latest tag from here and set environment variables SLACK_BOT_USER_OAUTH_TOKEN and SLACK_VERIFICATION_TOKEN

  6. Run

    docker-compose up
  7. Test

    To ensure IMPulse works fine send test alert:

    curl -XPOST -H "Content-Type: application/json" http://localhost:5000/ -d '{"receiver":"webhook-alerts","status":"firing","alerts":[{"status":"firing","labels":{"alertname":"InstanceDown4","instance":"localhost:9100","job":"node","severity":"warning"},"annotations":{"summary":"Instanceunavailable"},"startsAt":"2024-07-28T19:26:43.604Z","endsAt":"0001-01-01T00:00:00Z","generatorURL":"http://eva:9090/graph?g0.expr=up+%3D%3D+0&g0.tab=1","fingerprint":"a7ddb1de342424cb"}],"groupLabels":{"alertname":"InstanceDown"},"commonLabels":{"alertname":"InstanceDown","instance":"localhost:9100","job":"node","severity":"warning"},"commonAnnotations":{"summary":"Instanceunavailable"},"externalURL":"http://eva:9093","version":"4","groupKey":"{}:{alertname=\"InstanceDown\"}","truncatedAlerts":0}'