Error budget

Тема дорожной карты · Observability

Бюджет ошибок — это максимально допустимое количество ненадёжности, которое сервис может накопить за данный период SLO, прежде чем потребуются корректирующие действия. Он вычисляется как 1 - целевое значение SLO; для SLO доступности 99,9% за 30 дней бюджет ошибок составляет 0,1%, что равно примерно 43 минутам допустимого простоя. Бюджеты ошибок переводят абстрактные цели надёжности в конкретный ресурс, который команды могут «тратить» на рискованные развёртывания или «экономить» для более быстрых итераций. Когда бюджет ошибок почти исчерпан, автоматически вступают в силу такие практики, как заморозка функций, более строгий контроль развёртываний и фокус на работах по надёжности, — что делает бюджеты ошибок саморегулирующимся механизмом. Платформы наблюдаемости, такие как Grafana в сочетании с recording rules Prometheus, используются для отслеживания скорости сжигания бюджета ошибок в реальном времени и визуализации тенденций расхода за период SLO.

Как это работает

Error budget: SLI (Service Level Indicator) — измерение здоровья сервиса (например "доля HTTP 200"). SLO (Objective) — таргет для этого SLI ("99.9% за 30 дней"). SLA (Agreement) — контрактное обещание клиентам ("99.5% или refund"). Error budget = 1 - SLO; тратится на релизы + эксперименты. Burn-rate alerts (multi-window, multi-burn-rate) ловят fast + slow burn с подходящей чувствительностью.

Когда применять

Определите SLI + SLO до масштабирования reliability-работы — без них спорите вечно про "достаточно хорошо". Начните с availability + latency SLI (probe_success_ratio, request_latency_p99). SLO на 99% / 99.9% — 99.99% звучит хорошо, но цена экспоненциальная. Алерты на основе SLO (burn rate), не threshold-алерты на сырых метриках. Прочтите главу про SLO в SRE-книге Google.

Типичные ошибки

Ловушки Error budget: SLO без buy-in от продукта + инженерии ("бумажный SLO"); SLO, которые никто не трекает (дрейф); путаница SLA (юридическое) и SLO (инженерный таргет) — должны быть разными (SLO жёстче); error budget никогда не тратится ("слишком осторожны"); SLO-таргеты заданы случайной надеждой, не cost-анализом.

Связанные понятия

Полезные ресурсы

Проверить знания (1)

Загрузка вопросов…