Skip to content

deephaven-examples/prometheus-alerts

Repository files navigation

Prometheus Alerts

Prometheus is an open-source systems monitoring and alerting toolkit that collects and stores its metrics as time series data. This sample app shows how to ingest data from Prometheus alerts via webhooks into Deephaven.

This repository was built for Deephaven Community Core v0.11.0. No guarantee of forwards or badckwards compatibility is made.

High level overview

This app runs a Python Flask server that accepts Prometheus alert webhooks. The webhooks are deserialized, and the desired values are extracted and stored into a Deephaven table.

docker-compose.yml launches:

Components

General

Prometheus

  • prometheus/prometheus.yml - The Prometheus config file. This has been thinned down to handle just the alerts.
  • prometheus/rules.yml - The Prometheus alert rules file. This includes the configuration for what triggers alerts.

Prometheus Alert Manager

  • alertmanager/config.yml - The Prometheus alerts rules. This includes the configuration for the webhook alerts destination URL.

Flask Server

Dependencies

Launch

Before launching, you can modify any of the files in the prometheus/ or alertmanager/ directories to configure what alerts are sent, and where the alerts are sent. The default values can be used to demonstrate functionality.

Once you are set, simply run the following to launch the app:

sh promDhAlertsStart.sh

Your Flask server should be running, and you can go to http://localhost:10000/ide to view the table in the top right Panels tab! This table will update as alerts are fired and resolved.