trails/infrastructure/grafana/dashboards
Ullrich Schäfer 3a43784f07 feat(infra): self-monitor the observability stack + Overpass alert
Adds the visibility that would have caught the corrupt-WAL incident,
plus a direct Overpass upstream alert.

- prometheus.yml: self-scrape Prometheus (localhost:9090) and Loki
  (loki:3100). Prometheus scraped everything except itself, so TSDB
  health (compaction failures, WAL corruption, head series, retention
  deletions) was invisible.
- monitoring-health.json: new "Monitoring Health" dashboard — TSDB
  compaction/WAL failures, retention deletions/hour, head series,
  samples/s, block bytes vs size-retention limit, retention depth
  (oldest-sample age), Loki ingestion rate + memory chunks.
- alerts.yml: prometheus-compaction-failing (any compaction failure or
  WAL corruption in 1h) and overpass-upstream-unhealthy (>20% upstream
  failure over 10m — sustained public-Overpass degradation, distinct
  from the symptom-level Caddy-502 alert).

Validated: promtool check config, YAML parse, JSON parse.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-09 12:21:16 +02:00
..
brouter.json BRouter host observability + docs 2026-04-23 23:10:45 +02:00
business.json Remove type:dashboard from annotation config 2026-03-29 21:57:39 +02:00
demo-bot.json Add Bruno (demo-bot) Grafana dashboard 2026-04-19 11:25:17 +02:00
infrastructure.json Unwrap dashboard JSON for Grafana provisioning 2026-03-29 22:18:06 +02:00
journal.json Add Journal dashboard, fix Caddy metrics, and improve alerts 2026-04-12 14:00:00 +02:00
monitoring-health.json feat(infra): self-monitor the observability stack + Overpass alert 2026-06-09 12:21:16 +02:00
overview.json fix(grafana): repair invalid JSON in overview dashboard 2026-06-09 12:00:19 +02:00
planner.json Fix Overpass health + cache-hit stat panels: vector(0) not clamp_min 2026-04-18 02:42:50 +02:00
service-health.json Update pgboss column names for v12 (snake_case) 2026-04-20 16:49:43 +02:00