Этот материал - часть практического курса “ProductDo: Tech для продакта

Шаблон построения post-mortem анализа

Вопрос Пояснение Пример
Название и короткое описание инцидента (summary) Тут нужно сформулировать самую суть (никаких обвинений, только факты о системах). Сервис заказа такси на 15 минут вышел из-за бага в алгоритме поиска.
Потери
(business impact) Числовое выражение потерь (деньги, покупки, пользователи) 18k заказов вернули ошибку, что вызвало потери X eur дохода и 4к удалений приложения.
**Главные причины
(root cause)** Основные причины, почему авария произошла. В алгоритм поиска был внесен баг, из-за чего километры стали метрами (10 км → 10 м), поэтому ближайшая машина никогда не могла быть найдена.
С чего началось (trigger) Что запустило процесс аварии. Баг попал в продакшн в один из двух датацентров в 08:56.
Как заметили (detection) Алерты? Взгляд на график? Случайно? Резкий скачок Error rate SLI сервиса бронирований вызвал алерт.
Как починили (resolution) Что сделали, чтобы остановить аварию? Откатили сервис к предыдущему состоянию.
Что прошло хорошо (what went well) Что прошло как мы планировали? Быстро сработали алерты, команда быстро починила простым откатом.
Баг был выкачен только в один из датацентров - спасибо системе двухступенчатого роллаута.
Что прошло плохо (what didnt go well) Что пошло не так? У нас вообще не было тестов при выкатке на прод.
Кроме того, мы потратили весь SLO-бюджет. По требованиям SLA мы вынуждены остановить разработку новых фичей до конца месяца и работать над улучшением устойчивости сервиса.
**Где нам повезло
(where we were lucky)** Что пошло хорошо, где могло бы пойти плохо :) Повезло, что авария произошла в дневное время, так что среагировать получилось очень быстро.
Что будем делать (action points)
Конкретные действия по предотвращению такой аварии в будущем и ссылки на стори в бэклоге. 1) Добавить достаточное число тестов для сервиса поиска.
  1. Рассмотреть возможность еще более ступенчатых роллаутов (например, не 50%, а 1%). |

Чек-лист: “Как продакту не допустить аварий”

Инструмент Фаза аварии Что продакт должен знать
SLIs/SLOs сервисов
Проактивно - Как устанавливать самые главные метрики для каждого сервиса (SLIs)