A self-hostable status webpage that uses Prometheus alerts to create and maintain service status and incident tracking / customer information flow.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Evilham 3df3617c93
typing: fix last issue in currently used code
4 days ago
adlermanager typing: fix last issue in currently used code 4 days ago
example-data/sites Mock: fix mock script for newer requirements 4 days ago
.gitignore Don't commit .env. 5 years ago
LICENSE Initial commit 5 years ago
Pipfile Partial rewrite with sane typing (modern python!) 4 days ago
Pipfile.lock Partial rewrite with sane typing (modern python!) 4 days ago
README.md First draft. 5 years ago
app.py Partial rewrite with sane typing (modern python!) 4 days ago
motd.txt remove the backend/ subdir 5 years ago
prometheus-mock.sh Partial rewrite with sane typing (modern python!) 4 days ago

README.md

prometheus-adlermanager (Working title)

What?

A self-hostable status webpage that uses Prometheus alerts to create and maintain service status and incident tracking / customer information flow.

Why?

Prometheus is awesome! And AlertManager and Grafana are quite wonderful too, but they expose too much information.

This project allows you to choose which alerts/statistics get published in a fashion suitable for user-facing status pages.

I want it!

TODO: Maybe make this available / add deployment instructions.

How does it work?

We aim to solve that by using the same source of information to publish only the desired state/statistics.

1. Pretend to be an AlertManager

This is done by accepting POST requests from Prometheus on /api/v1/alerts, see https://prometheus.io/docs/alerting/clients/ docs.

2. Filter out non-public Alerts

To mark an Alert as public, whitelist it by using the special labels: TODO

3. Structure Alerts into Services and Components

4. Keep track of incidents

5. Allow for public updates / accountability