Блог "Дети ОИТа"
/поиск

Расследование инцидента: от триггера до фиксации выводов

Введение

Короткий и повторяемый процесс расследования экономит время и снижает риск упущенных деталей. Ниже — компактный фреймворк, который легко адаптировать под вашу инфраструктуру.

Триггер и первичная фиксация

  • Источник алерта: мониторинг, SIEM, жалоба пользователя.
  • Момент T0 и окно наблюдения (например, T0 ± 15 минут).
  • Быстрые признаки: всплеск 5xx/4xx, рост latency, таймауты, OOM, ротация логов.
  • Сразу зафиксируйте: hostname/IP, сервис, версию, окружение, изменения за последние 24 часа.

Сбор данных

  • Логи приложения и syslog за окно T0 ± 15 минут; включите TRACE/DEBUG точечно.
  • Метрики: CPU/RAM, сеть, диск, очереди, p95/p99 latency, RPS.
  • Трассировки/профили, если доступны.
  • Конфигурации: diff конфигов до/после; релизы и флаги.
  • Снимки состояния: top/htop, netstat/ss, lsof, journalctl -u, df -h, dmesg.

Гипотезы и проверка

  • Сформулируйте 3–5 гипотез (сеть, зависимость, код, ресурсы, конфигурация).
  • Для каждой: что проверить, какой порог считать «подтверждено/опровергнуто».
  • Пример: «Рост 5xx совпадает с таймаутом к БД → проверить latency БД и pool exhaustion».

Воспроизведение и изоляция

  • Попробуйте воспроизвести в staging с тем же трафиком/пайлоадом.
  • Изолируйте фактор: откат флага, снятие части трафика, переключение на резерв.

Исправление и верификация

  • Примените фикс; проверьте ключевые метрики и логи 10–30 минут.
  • Убедитесь, что алерт закрылся и не вернулся на аналогичном профиле нагрузки.

Фиксация выводов

  • Заполните короткий шаблон: резюме, причина, доказательство, исправление, предотвращение.
  • Обновите runbooks/чек-листы; добавьте недостающие метрики/алерты.
  • Назначьте задачи на предотвращение (таймауты, ретраи, circuit breaker, лимиты).

Мини-шаблон отчёта

  • ID и название инцидента
  • T0, окно, затронутые сервисы
  • Симптомы и метрики
  • Причина и доказательства
  • Исправление и шаги верификации
  • Меры предотвращения и владельцы

Чек-лист

  • Зафиксируйте T0 и окно до начала сбора.
  • Не меняйте несколько вещей одновременно.
  • Сохраняйте копии логов/конфигов «как есть».
  • Пишите выводы в день инцидента.