Lesson 8 · Scale, dashboards & alerting
SLI / SLO / error budgets
Turning metrics into a reliability target — and alerting on how fast you're spending it.
Your win: define SLI, SLO, and error budget precisely, explain burn-rate alerting, and see how this repo expresses reliability as alert rules rather than formal SLO objects.
Three definitions, in order
| Term | What it is | Example |
|---|---|---|
| SLI — Service Level Indicator | a measured number: how well the service is doing, from the user's view | % of requests < 300ms (or non-5xx) |
| SLO — Service Level Objective | the target for that SLI | 99.5% of requests < 300ms |
| Error budget | the allowed failure: 100% − SLO | 0.5% may be slow/failing |
An SLA is the contractual version (with penalties); SLOs are your internal target, usually stricter.1 The SLI is built from the metrics you already have — e.g. a ratio of "good" requests to total, straight out of the RED metrics from Lesson 3.
The error budget changes how you think
Alert on burn rate, not raw errors
The naive alert "error rate > 1%" pages you at 3am for a blip that doesn't threaten the SLO. The SRE approach alerts on burn rate — how fast you're consuming the error budget.2 A burn rate of 1 means you'll exactly exhaust the budget by the window's end; a burn rate of 14 means you'll burn it in hours — page now. Slow burns get a ticket, not a page. This is how mature teams cut alert fatigue.
backend-services group: HighNumberOfSlowGrpcRequests on p95,
HighNumberOfFailedGrpcRequests on error rate). The threshold in a rule is a de
facto objective; there's no explicit error-budget/burn-rate machinery. So the correct
interview line is: "we monitor SLO-style thresholds via Prometheus alert rules, but don't
yet track formal error budgets or burn-rate alerts — that'd be a natural next step."
Knowing the gap is as valuable as knowing the ideal.
Google SRE — SLIs, SLOs, and error budgets
The canonical definitions, the error-budget philosophy, and burn-rate alerting.
→ sre.google — Service Level Objectives
→ sre.google — Alerting on SLOs (burn rate)
Check yourself (from memory)
Q1. An SLI is…
Q2. An error budget of 0.5% comes from an SLO of…
Q3. You alert on burn rate (not raw error %) to…
backend-services,
values.yaml:720-791); no explicit error-budget/burn-rate machinery yet. Honest
line: "SLO-style thresholds via alert rules; formal error budgets would be the next step."