Что такое Critical Alert в мониторинге?

«Что такое Critical Alert в мониторинге?» — вопрос из категории Мониторинг и логирование, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Critical Alert (критическое оповещение) — это уведомление, срабатывающее при нарушении ключевых показателей работоспособности системы, которое требует немедленного вмешательства инженеров, так как напрямую влияет на бизнес-процессы или безопасность.

Типичные триггеры для Critical Alert:

  • Нарушение SLA/SLO (например, доступность сервиса упала ниже 99.9%).
  • Полный отказ критически важного сервиса (база данных, шлюз аутентификации).
  • Критическая уязвимость или атака безопасности.
  • Исчерпание ключевых ресурсов (дисковое пространство на 100%).

Отличия от Warning Alert:

  1. Приоритет: Critical требует реакции в течение минут, Warning — в течение часов.
  2. Эскалация: Critical алерты дублируются в каналах с гарантированной доставкой (SMS, звонки через PagerDuty, Telegram), а не только в Slack/Email.
  3. Условия срабатывания: Более жёсткие пороги. Например, не 5% ошибок, а 20%.

Пример настройки в Prometheus + Alertmanager:

# prometheus_rules.yml
alert: DatabaseDown
expr: up{job="postgres"} == 0
for: 1m
labels:
  severity: critical
  team: db
annotations:
  summary: "Критический отказ базы данных {{ $labels.instance }}"
  description: "PostgreSQL инстанс недоступен более 1 минуты."

# alertmanager.yml
route:
  group_by: ['alertname', 'cluster']
  group_wait: 10s
  group_interval: 10s
  repeat_interval: 1h
  receiver: 'critical-receiver'
  routes:
  - match:
      severity: critical
    receiver: 'pagerduty-critical'
    group_interval: 5s
    repeat_interval: 5m

receivers:
- name: 'pagerduty-critical'
  pagerduty_configs:
  - service_key: '<your-key>'
    severity: critical

На практике мы настраиваем Critical Alert так, чтобы избежать "шума" — они должны срабатывать редко, но всегда по делу.