Motivation
The 0.5→0.6 upgrade guide and the managed-Postgres guide define a precise watch-list (ring rotation, prune blockers, queue lag, xact age), but operators must hand-build alerts from prose. docs/grafana/ ships dashboards; it should ship alert rules too.
Scope
Importable Prometheus/Grafana alert rules beside docs/grafana/awa-dashboard.json, covering at minimum:
Each rule documented with meaning, likely cause, and the matching awa doctor check / troubleshooting entry.
Acceptance
- Rules import cleanly into a stock Prometheus/Grafana stack; validated in CI (syntax/lint at minimum).
- Cross-referenced from the upgrade guide and operations handbook so prose watch-lists point at the shipped rules.
References
Roadmap: docs/0.7-roadmap.md (WS-4, NEW-12). Related: #169 playbook, #302/#303, #341, docs/upgrade-0.5-to-0.6.md watch-list.
Motivation
The 0.5→0.6 upgrade guide and the managed-Postgres guide define a precise watch-list (ring rotation, prune blockers, queue lag, xact age), but operators must hand-build alerts from prose.
docs/grafana/ships dashboards; it should ship alert rules too.Scope
Importable Prometheus/Grafana alert rules beside
docs/grafana/awa-dashboard.json, covering at minimum:pg_stat_activity.xact_startage beyond threshold (the Validate MVCC / dead-tuple behaviour under sustained load #169 MVCC-discipline alert promised in that issue's playbook)awa_maintenance_rotate_attempts_total{awa_ring_outcome="skipped_busy"}sustained elevation (producers outpacing consumers)awa_maintenance_prune_attempts_total{awa_ring_outcome="blocked"}non-zero (held-tx blocking reclaim)awa_queue_lag_secondsp95 vs SLOawa_maintenance_branch_overrun_totalnon-zero (also the telemetry gate for maintenance: split rescue + promote into a separate tokio task (v0.7) #303)Each rule documented with meaning, likely cause, and the matching
awa doctorcheck / troubleshooting entry.Acceptance
References
Roadmap:
docs/0.7-roadmap.md(WS-4, NEW-12). Related: #169 playbook, #302/#303, #341,docs/upgrade-0.5-to-0.6.mdwatch-list.