Error budget
An error budget is the amount of failure an SLO allows over its window: at 99.9% over a 30-day month, 43 minutes 12 seconds of downtime.
The budget turns reliability into something a team can spend. While budget is left, changes ship as usual; when it is nearly spent, the team slows releases and works on what caused the failures.
The burn rate says how fast the budget is going. Burning a month's budget in a day is an emergency; burning it evenly over the month is exactly on target. Alerting on burn rate catches both sudden outages and slow leaks.
At a glance
error budget = (100% − SLO) × window 99.9% over 30 days: 0.1% × 43,200 min = 43.2 min
Track how much budget is left →
Questions
What happens when the error budget is spent?
That is up to the team's policy. Common rules: freeze non-urgent releases, put the next sprint on reliability work, and review the incidents that used the budget.
Does planned maintenance use the error budget?
If users cannot use the service, it usually should. Leaving it out makes the SLO look better than what users experienced.
Related terms
Monitor it with OpenUptime
Checks from one or several regions, alerts to the tools you use, and a status page for your customers. Free to start, open source under the MIT license.
错误预算(Error budget)
错误预算是 SLO 在其时间窗口内允许的失败量:以 30 天的月份计,99.9% 对应 43 分 12 秒的停机时间。
错误预算把可靠性变成团队可以“花费”的东西。预算有剩余时照常发布;快用完时,团队放慢发布节奏,优先解决导致失败的问题。
消耗速率表示预算用得有多快。一天用完一个月的预算是紧急情况;整月均匀用完则刚好达标。按消耗速率告警,既能抓到突发故障,也能发现缓慢的持续问题。
速览
错误预算 =(100% − SLO)× 时间窗口 30 天 99.9%:0.1% × 43,200 分钟 = 43.2 分钟
常见问题
错误预算用完了怎么办?
取决于团队的约定。常见做法:冻结非紧急发布,下一个迭代优先做稳定性工作,并复盘消耗预算的那些事件。
计划内维护会消耗错误预算吗?
如果维护期间用户无法使用服务,通常应该计入。不计入会让 SLO 看起来比用户的实际体验更好。