Skip to content

SLO & Error Budgets

Терминология

ТерминОпределение
SLI (Service Level Indicator)Метрика, характеризующая качество сервиса
SLO (Service Level Objective)Целевое значение SLI
SLA (Service Level Agreement)Юридическое обязательство перед клиентом
Error BudgetДопустимый объём ошибок = 100% − SLO

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

SLO = 99.9% uptime

Error Budget = 0.1% = ~43 минуты downtime в месяц

Потратили 30 мин → Осталось 13 мин → Замедляем деплои
Потратили 0 мин → Бюджет полный → Можно рисковать

SLO по сервисам

СервисSLISLOError Budget (30 дней)
API GatewayAvailability99.9%43 мин
PaymentsSuccess Rate99.95%21 мин
AuthLatency (p99 < 500ms)99.9%43 мин

Определение SLI

Availability

SLI = (успешные запросы / все запросы) × 100%

Успешные = HTTP 2xx + 3xx
Неуспешные = HTTP 5xx (4xx НЕ считаются ошибкой сервиса)

Latency

SLI = (запросы быстрее порога / все запросы) × 100%

Пример: 99% запросов быстрее 500ms

Correctness

SLI = (запросы с корректным результатом / все запросы) × 100%

Error Budget Policy

Когда бюджет > 50%

  • Нормальный режим работы
  • Деплои без ограничений
  • Можно проводить эксперименты

Когда бюджет 10–50%

  • Осторожный режим
  • Ревью каждого деплоя
  • Фокус на стабильности

Когда бюджет < 10%

  • Заморозка фич
  • Только bugfix и reliability improvements
  • Разбор причин расхода бюджета

Когда бюджет = 0%

  • Полная заморозка деплоев (кроме hotfix)
  • Incident review с руководством
  • Возобновление после восстановления бюджета

Ревью SLO

  • Еженедельно: проверка текущего расхода error budget
  • Ежеквартально: ревью целевых значений SLO
  • По необходимости: пересмотр после крупных инцидентов