Управление инцидентами и постмортемы
Коротко: Упорядоченная обработка сбоев: быстро обнаружить, устранить, сообщить и затем без поиска виноватых извлечь уроки.
Подробнее: Инцидент — это событие, неожиданно ухудшающее работу сервиса, например сбой или резко выросшая доля ошибок. Управление инцидентами регулирует роли, порядок действий и коммуникацию, чтобы людям не приходилось импровизировать под давлением. Постмортем (разбор) фиксирует, что произошло и как предотвратить это в будущем.
Подробности
Процесс во время инцидента
- Обнаружить: оповещение мониторинга или сообщение от пользователей.
- Классифицировать: насколько это серьёзно (критичность, затронутые пользователи)?
- Координировать: один человек руководит (incident commander), остальные расследуют, один сообщает.
- Смягчить: сначала остановить воздействие (откат, отключение, переключение на резерв), только затем искать причину.
- Информировать: страница статуса и уведомления клиентов с честным описанием положения дел.
- Закрыть: подтвердить нормальную работу.
Постмортем
Он содержит краткое описание, хронологию со временем, влияние (длительность, число затронутых), причины (обычно несколько, а не просто «одна ошибка»), что прошло хорошо и плохо, и конкретные действия с ответственными и сроками. Помогает несколько раз подряд спрашивать «почему?» («пять почему»).
Без поиска виноватых
«Blameless»-постмортем спрашивает не о том, кто виноват, а о том, почему система позволила человеку ошибиться. Люди, боящиеся обвинений, скрывают факты, и организация учится меньше. Человеческие ошибки обычно признак отсутствующих защитных механизмов — ревью, тестов или запасных вариантов.
Метрики
Распространены MTTD (время обнаружения), MTTR (время восстановления) и число инцидентов. Они должны давать подсказки, а не служить соревнованием. Даже небольшим проектам полезна краткая заметка после каждого сбоя.
См. также: SLI, SLO и бюджет ошибок, SLA, уровень поддержки и система тикетов, Хаос-инжиниринг