71 / 95 · 05 Performance & Chaos Engineering · SLOs, SLIs, and Error Budgets← prev⊞ allnext →☰ Read as one page
11.6Monitoring Error Budget Consumption
Prometheus/Grafana Setup
# prometheus-error-budget-recording-rules.yaml
groups:
- name: error-budget
interval: 1m
rules:
# SLI: availability (successful requests / total requests)
- record: sli:checkout:availability:5m
expr: |
sum(rate(http_requests_total{service="checkout",status!~"5.."}[5m]))
/
sum(rate(http_requests_total{service="checkout"}[5m]))
# Error budget remaining (30-day window)
- record: error_budget:checkout:availability:remaining
expr: |
1 - (
(1 - sli:checkout:availability:30d) / (1 - 0.9995)
)
# Result: 1.0 = full budget, 0.0 = budget exhausted, <0 = over budget
# Error budget burn rate
- record: error_budget:checkout:availability:burn_rate:1h
expr: |
(1 - sli:checkout:availability:1h) / (1 - 0.9995)
# Result: 1.0 = sustainable rate, >1.0 = burning faster than allowed