diff --git a/README.md b/README.md index aada76b..4949478 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,43 @@ runbooks/ one anchor per alert, linked from each rule's runbook_url scripts/ policy checks on rendered dashboards ``` +## Architecture + +```mermaid +flowchart LR + subgraph git["Git: source of truth"] + rules["prometheus/rules"] + tests["prometheus/tests"] + dash["grafana/dashboards
+ lib/common.libsonnet"] + rb["runbooks"] + end + + subgraph ci["CI: make ci"] + fmt["jsonnetfmt --test"] + chk["promtool check rules"] + ut["promtool test rules
firing + non-firing cases"] + build["jsonnet build
build/dashboards/*.json"] + pol["check_dashboards.py
uid, datasource, editable"] + end + + tf["deploy/terraform
grafana_folder + grafana_dashboard"] + graf["Grafana / Grafana Cloud"] + prom["Prometheus rule_files
or mimirtool rules sync"] + route["Alert routing
warning: ticket, critical: page"] + + rules --> chk + rules --> ut + tests --> ut + dash --> fmt + dash --> build + build --> pol + pol --> tf + tf --> graf + ut --> prom + prom --> route + route -. "runbook_url" .-> rb +``` + ## What's in it | Area | Highlights |