hostprofi.ru
Подобрать хостинг
Термин·буква А

Алертинг

краткое определение

Алертинг (alerting) — система автоматических уведомлений при превышении пороговых значений метрик или обнаружении аномалий. Оповещает по email, Telegram, Slack, PagerDuty. Интегрируется с системами мониторинга (Zabbix, Prometheus Alertmanager, Grafana Alerts).

Алертинг — компонент системы мониторинга, отвечающий за уведомление ответственных лиц при возникновении инцидентов или приближении к критическим порогам. Качественный алертинг: минимум ложных срабатываний, максимум actionable информации в уведомлении.

Prometheus Alertmanager

# prometheus/rules/alerts.yml
groups:
  - name: server
    rules:
    - alert: HighCPU
      expr: 100 - (avg by(instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) > 90
      for: 5m
      labels:
        severity: critical
      annotations:
        summary: "High CPU on {{ $labels.instance }}"
        description: "CPU usage is {{ $value }}%"

    - alert: DiskAlmostFull
      expr: (node_filesystem_size_bytes - node_filesystem_free_bytes) / node_filesystem_size_bytes > 0.85
      for: 10m
      labels:
        severity: warning

Каналы уведомлений

  • Telegram — самый популярный канал для DevOps-команд в России. Мгновенная доставка.
  • Email — для дневных отчётов и не срочных уведомлений.
  • Slack/Teams — корпоративные мессенджеры.
  • PagerDuty/OpsGenie — дежурства, эскалации, SLA.
  • Webhooks — интеграция с любым сервисом.

Telegram-бот для алертов

# Простой алерт через curl
TOKEN="bot_token"
CHAT_ID="chat_id"
MESSAGE="CPU > 90% на webserver1"
curl -s -X POST https://api.telegram.org/bot${TOKEN}/sendMessage \
     -d chat_id=${CHAT_ID} \
     -d text="${MESSAGE}"

Лучшие практики

Алерт должен быть actionable (требовать действий). Избегать alert fatigue (привыкания к частым ложным срабатываниям). Дифференцировать severity: info/warning/critical. Включать runbook ссылку: «Что делать при этом алерте».

История

SNMP Traps — ранняя форма алертинга (1988). Nagios — первая популярная система мониторинга с алертингом (1999). Prometheus + Alertmanager — 2015. PagerDuty основана в 2009 году. Grafana Alerting (встроенный) появился в Grafana 8 (2021).

Связь с хостингом

Алертинг — обязательный компонент для production-хостинга. Базовые алерты для VDS: CPU > 90%, диск > 85%, недоступность HTTP/HTTPS, сбой процесса Nginx/MySQL. Связка Zabbix + Telegram или Telegraf + Prometheus + Alertmanager покрывает большинство сценариев.

На что обращать внимание при настройке алертинга

Эффективный алертинг для VPS: настройте приоритеты — P1 (немедленно, SMS/звонок), P2 (в рабочее время, Telegram), P3 (отчёт раз в день). Используйте hysteresis (выжидание) чтобы не получать алерт при кратковременных пиках. Для Zabbix настройте severity levels: Information, Warning, Average, High, Disaster. Алертинг на disk full должен срабатывать при 80% (предупреждение) и 90% (критично), а не при 100%.

Инструменты алертинга для хостинга

ИнструментИнтеграцияКаналы уведомлений
Zabbixагент, SNMPEmail, SMS, Telegram, PagerDuty
Prometheus AlertmanagerметрикиEmail, Slack, Webhook
Grafana OnCallлюбые datasourceTelegram, SMS, Mattermost
UptimeRobotвнешний HTTPEmail, SMS, Slack
Better Uptimeвнешний HTTP/pingTelegram, SMS, голосовой звонок

Типичные ошибки настройки алертинга

  • Alert fatigue: слишком много уведомлений — команда перестаёт реагировать. Используйте группировку и дедупликацию.
  • Алерт только на симптом (CPU 90%), а не на причину — ищите коррелирующие метрики.
  • Нет ответственного дежурного: алерт в общий Slack-чат — никто не реагирует.
  • Отсутствие runbook: сотрудник получил алерт, но не знает что делать.

Другие термины