Расследование инцидента: от триггера до фиксации выводов
Введение
Короткий и повторяемый процесс расследования экономит время и снижает риск упущенных деталей. Ниже — компактный фреймворк, который легко адаптировать под вашу инфраструктуру.
Триггер и первичная фиксация
- Источник алерта: мониторинг, 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 и окно до начала сбора.
- Не меняйте несколько вещей одновременно.
- Сохраняйте копии логов/конфигов «как есть».
- Пишите выводы в день инцидента.