Alert fatigue
Тема дорожной карты · Observability
Усталость от алертов — это состояние десенсибилизации, возникающее, когда инженеры получают так много алертов, что начинают автоматически игнорировать или отклонять их, включая действительно критические. Это один из наиболее опасных антипаттернов в наблюдаемости, поскольку он незаметно деградирует надёжность человеческого слоя реагирования на инциденты. Усталость от алертов, как правило, является следствием слишком большого количества статических пороговых алертов, срабатывающих на нормальных флуктуациях, алертов без чёткого владельца или runbook, а также алертов, самоустраняющихся без каких-либо необходимых действий. Средство — беспощадный аудит правил алертинга, удаление или понижение уровня шумных алертов и перестройка алертинга на основе скорости сжигания бюджета ошибок SLO, которые срабатывают только тогда, когда бюджет ошибок реально находится под угрозой. Отслеживание объёма алертов во времени на дашборде Grafana — путём запроса API Alertmanager на количество срабатывающих алертов — предоставляет наблюдаемость, необходимую для систематического выявления и устранения наиболее шумных источников алертов.
Как это работает
Alert fatigue соединяет observability-данные с людьми через on-call ротации. Инструменты: Alertmanager (Prometheus-native), Grafana Alerting (multi-source), PagerDuty / OpsGenie / Squadcast (incident management поверх). Правила оценивают metrics/logs/traces-запросы; срабатывают при for: 5m; роутятся по labels (severity: page vs severity: ticket); идут в каналы (PagerDuty, Slack, Telegram, webhook). SLO burn-rate alerts — современный best practice.
Когда применять
Алертите на симптомы (SLO burn rate, error rate, latency), не на причины (CPU, RAM). Multi-window multi-burn-rate alerts — fast pages для внезапно-плохого, slow tickets для постепенной деградации. Всегда runbook URL в annotations. Тестируйте алерты в staging до production. Аудитьте alert fatigue раз в квартал — убивайте алерты, на которые никто не реагирует.
Типичные ошибки
Ловушки Alert fatigue: pages на инфра-метриках, не затрагивающих юзеров (CPU > 80% на 12-ядерном боксе в 3:00 на non-user-facing job); flapping-алерты (нет for:); алерты без runbook = хаос в 3:00; все алерты в один Slack-канал (alert fatigue).