Чек-лист: как настроить мониторинг, который предупредит сбой до его возникновения
Шаг 1. Составьте карту сервисов и зависимостей
Что включить: микросервисы, БД, очереди (Kafka, RabbitMQ), сторонние API (платежки, SMS).
Зачем: чтобы понять, как падение одного компонента влияет на систему.
«Падение Redis "уронит" кэширование и увеличит нагрузку на БД».
Шаг 2. Разделите симптомы проблем: срочные vs важные
Срочные (реагировать немедленно!)
БД:
connections > 90%, replica lag > 10 сек
.Платежный шлюз:
5xx errors > 1% за 5 мин, latency p99 > 3 сек
.Kubernetes:
pod restarts > 5/час, node CPU > 95%
.
Инструменты: Grafana OnCall, PagerDuty.
Важные (требуют анализа)
Рост ошибок
4xx > 5% за сутки
.Увеличение времени ответа API на
> 20% за неделю
.Падение успешных сессий (Google Analytics).
Решение: алерты в Slack/Email.
Шаг 3. Автоматизируйте рутину
Сбор логов: стек EFK (Elastic + Fluentd + Kibana).
Kubernetes:
Liveness-пробы → авто-перезапуск пода при сбое.
Readiness-пробы → остановка трафика на проблемный под.
Redis: настройка политик очистки кэша.
Совет для ленивых:
«Используйте Coroot — он автоматически строит карту зависимостей и предлагает алерты»
Шаг 4. Тестируйте устойчивость
Chaos Engineering раз в месяц:
Отключайте случайные ноды в кластере.
Эмулируйте нагрузку в 10 раз выше обычной (Locust).
«Мониторинг должен не только сообщать о проблемах, но и подсказывать, что делать».