В англійській мові використовується термін postmortem timeline
Learn the English phrasing for writing a clear, precise incident timeline in a postmortem, from detection through resolution.
Посмертна хронологія є хребетною кістою всього документа — все інше (корінь причини, вплив, елементи дій) залежить від чіткої послідовності того, що сталося і коли. Неясна або емоційно захищена хронологія («все почалося не так близько півночі») підриває довіру до всього пост-морту, в той час як точна («на 14:02 UTC, рівень помилок перевищив 5%) дозволяє читачам реконструювати точно, що трапилося, не вгадуючи.
Ключовий словник
** Точне встановлення часових позначок ** — прикріплення кожної події на часовій шкалі до певного, послідовного часового поясу (зазвичай, UTC), щоб читачі з різних регіонів могли стежити за послідовністю подій без умілого обчислення часових поясів.
- “Я точно вказав час: о 14: 02 UTC, розгортання завершилося; о 14: 04 UTC, кількість помилок почала зростати.” *
** Відмінність виявлення від виникнення ** — відокремлення моменту, коли проблема фактично почалася, від моменту, коли її було помічено, що часто є значно відмінним і важливим проміжком часу, який слід викликати.
- “Я відрізнив виявлення від події: основна проблема почалася о 14: 04 UTC, але наша попередження не було викликано до 14: 19 UTC, 15- хвилинний проміжок виявлення.” *
** Описання виконаних дій, а не лише спостережених подій ** — запис того, що відповідач насправді зробив на кожному кроці, а не лише того, що робила система, щоб після цього можна було оцінити саму відповідь. “Я описав вжиті дії: о 14:22 UTC, інженер на черзі відновив розгортання; о 14:25 UTC, рівень помилок почав відновлюватися.”
** Позначте розв’ язання чітко ** — чітко вкажіть, коли інцидент вважався розв’ язаним, і за якими критеріями, замість того, щоб залишати часову шкалу неоднозначною. “Я чітко позначив розв’язання: інцидент був оголошений вирішеним о 14:40 UTC, як тільки рівень помилок був нижче базисного рівня протягом десяти послідовних хвилин.”
Звичайні фрази
- «На [HH:MM UTC], [спеціальна подія, зазначена фактично].»
- “Це було вперше виявлено в [час], через [спеціальне попередження / звіт], [X хвилин] після того, як почалася основна проблема.”
- «У [час], [відповідачі/команда] зробили [спеціальну дію], яка призвела до [спостережуваного ефекту]»
- “Інцидент був оголошений вирішеним в [час], на основі [спеціальних критеріїв].”
- «Між [часом] і [часом], [постійна умова, наприклад, частота помилок залишалася підвищеною]»
Приклади висловлювань
Точний, добре структурований уривок з хронології:
- “14: 02 UTC — Завершення розгортання v2. 14. 0. 14: 04 UTC — Частота помилок на кінцевій точці отримання починає зростати з початкової 0, 1% до 8%. 14: 19 UTC — Попередження PagerDuty і підтвердження інженера- чергового. 14: 22 UTC — Інженер- черговий визначає розгортання як ймовірну причину і починає відновлення. 14: 25 UTC — Відновлення завершено; частота помилок починає відновлюватися. 14: 40 UTC — Частота помилок залишається нижче 0, 2% протягом десяти хвилин; інцидент оголошено вирішеним.” *
Явно викликати прогалини виявлення:
- “Була 15- хвилинна перерва між тим, як кількість помилок почала зростати (14: 04 UTC) і коли було викликано наше попередження (14: 19 UTC) — ця перерва розглянута у пунктах дій нижче.” *
Уникнення нечіткої, неприхованої мови: Замість “все погіршилося післяобідньо,” пишіть: “між 14:04 UTC і 14:19 UTC, кількість помилок постійно зростала з 0.1% до піку 12%.”
Запис дії, яка не розв’ язала проблему відразу:
- “14: 10 UTC — Перша спроба зменшення шкоди (перезапуск служби, на яку впливає проблема); кількість помилок не зменшується. 14: 22 UTC — Коренева причина виявлена як розгортання, замість цього розпочато відновлення.” *
Професійні поради
- Прикріпити кожен штамп часу до одного, послідовного часового поясу (UTC є стандартним), і вказати його явно у верхній частині часової шкали.
- Відокремити ** випадок, виявлення і розв’ язання ** як окремі, індивідуально штамповані моменти часу — об’ єднання їх приховує прогалини, які варто звернути увагу.
- Записувати записи на часовій шкалі як ** фактичні, спостережувані події ** (« рівень помилок досяг 8% »), а не як інтерпретацію (« все погіршилося ») — зберігати інтерпретацію для розділу про кореневу причину.
- Включити ** невдалих спроб зменшення ** у часову шкалу, а не лише виправлення, яке спрацювало — вони часто є важливими для розуміння відповіді і варто вивчити з них.
- Вкажіть ** конкретні критерії **, що використовуються для оголошення розв’ язання, оскільки « це виглядало добре » є набагато слабшим закінченням, ніж « рівень помилок залишався нижче базисного рівня протягом десяти послідовних хвилин. »
Практичні вправи
- Написати три послідовних запису на часовій шкалі з часом для гіпотетичного випадку, використовуючи UTC.
- Напишіть речення, у якому буде чітко вказано проміжок часу між випадком і виявленням.
- Переписати неясне речення “все погіршилося близько полудня” як точний запис з датою.
Назва походить від мови індіанців — мови індіанців-пойнте-крік
Основна концепція - документування прогресу інциденту - має вирішальне значення. Але просто сказати, що сталося, недостатньо. Ясність і точність вашої мови безпосередньо впливає на розуміння, відповідальність і, врешті-решт, на отримані уроки. Рідні носії англійської часто покладаються на тонкі фрази, які можуть затемнити значення для тих, чия перша мова не є. Давайте розглянемо деякі типові пастки і як вдосконалити свій підхід, особливо при спілкуванні з різноманітною командою.
Розгляньте це повідомлення Slack від переглядача коду: «Це PR потребує більш детальної інформації про кореневу причину. У ньому просто написано «ваду виправлено». Серйозно, що було пошкоджено?» Проблема не обов’язково в фактичному твердженні – ваду виправили – а в відсутності контексту і точної мови. Краще було б написати щось на зразок: « Опис говорить « виправлено помилку », але можна було б прояснити початковий вплив: на яку конкретну функціональність вплинула ця помилка? Додавши детальну інформацію про масштаб проблеми, ви зрозумієте її більш широкі системні наслідки.» Це демонструє фокус на впливі — ключовому елементі постмортемів — і використовує більш формальну, професійну мову.
Іншим прикладом є опис запитів на завантаження: « Виправлено періодичний збій ». Хоча це технічно вірно, опис є надзвичайно нечітким. Можливо, кращим підходом буде « Розв’ язано проблему з перервними аварійними завершеннями програми, що походять від [Назва компонента] під час періодів максимального навантаження (за останні 24 години спостерігалося 3 випадки). » Основна причина, здається, пов’ язана з недостатнім виділенням ресурсів для цього компонента під час обробки великої кількості запитів. Зауважте зміну — ми кількісно оцінили проблему, визначили область, на яку вона впливає, і докладно описали обставини. Цей рівень деталізації не стосується приписування вини; це стосується надання необхідної інформації для аналізу.
Наконец, помни, что пост-мёртвые - это документы, составленные совместно. Під час документування часової шкали завжди намагайтеся використовувати активний голос і уникати пасивних конструкцій, таких як « це було визначено » або « проблему було визначено ». Замість цього, скажіть « Ми виявили…» або « Команда досліджувала…». Використання короткої, однозначної мови забезпечує, що всі знаходяться на одній сторінці - незалежно від їх рідної мови. Сфокусуйтеся на спостережуваних фактах, конкретних дій, які були здійснені, і на наслідках цих дій. Цей структурований підхід значно поліпшить комунікацію під час перегляду інцидентів, що призведе до більш ефективних постмортемів і, врешті-решт, до більш стійкого процесу розвитку.