TGViewer
The Last of 9s The Last of 9s @r9yo11yp9e · 840 subscribers
Post #7 1.55K
#SLO #SRE #ErrorBudget

как мы считаем бюджет ошибок без специально обученных инструментов типа Sloth или Pyrra? для всех махинаций нам понадобится только grafana и victoriametrics (с prometheus чуть сложнее).

шаг 1:
описываем в *recording rules* метрики, которые будем трекать с максимально точным фильтром по лейблам.

additionalPrometheusRules:
- name: sre-metrics
groups:
- name: kubernetes-resource
rules:
- record: sre:shop:apigw:99pct
expr: quantile(0.99, http_server_requests_seconds_max{namespace="shop",job="apigateway",uri=~"/users/profile|/auth/{userId}"})
- record: sre:shop:apigw:errors
expr: sum(rate(http_server_requests_seconds_count{namespace="shop",job="apigateway",status=~"5..|429",uri=~"/users/profile|/auth/{userId}"}[1m]) or vector(0))


шаг 2:
в grafana панели описываем состояние метрик, которое сигнализирует о наличии инцидента.
вычитаем временные интервалы, когда у нас плохое состояние, из общего времени в месяц (или другой интервал).

у меня еще есть переменная, которая отвечает за старт операционного дня — несколько часов ночью бюджет мы не считаем:

WITH(
shop_responses = sre:shop:apigw:99pct > 2.5,
shop_errors = sre:shop:apigw:errors > 0.5
)

((days_in_month() * 24 * 60 * 60) -
running_sum(
(duration_over_time(shop_responses[:15s],16s) default
duration_over_time(shop_errors[:15s],16s)) or vector (0) ifnot (hour(time()[1h:1h] + timezone_offset("Europe/Moscow")[1h:1h])[1h:1h] < ($operation_day_start - 1))
)) / (days_in_month() * 24 * 60 * 60)


а дальше строим тренды, считаем burn rate и, конечно же, говорим друзьям, что у вас много девяток!

в дальнейшем выложу полноценное демо с дашбордом и данными.
  • 🔥 7
More from @r9yo11yp9e
  1. Apr 7, 2026#jvm #profiling #news привет всем, пока готовлю новый контент не могу пройти мимо подобных…
  2. Feb 1, 2026#firstnine #linux #nodeexporter #sre #applicationfootprint #dashboard #grafanamaniac и сра…
  3. Feb 1, 2026#blog #news привет, хорошие новости! я повел полный рефакторинг своих статей и осознал что…
  4. Jan 28, 2026Perf Weekly | №1 (инструменты, системы и производительность) Troubleshooting Slow TCP Tran…
  5. Jan 14, 2026#performance #news увидел презентацию перформанс инженера - Alex Podelko (AWS), про тренды…
  6. Oct 30, 2025сегодня премьера! моя первая публикация на английском и моя первая публикация в составе vi…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →