Через час ты не вспомнишь, что делал в 13:26 и что из этого помогло.
Хронология — список событий инцидента по времени: что увидели, что сделали, что изменилось. Её начинают с первой минуты и дописывают по строке на каждое действие, а после сбоя из неё собирают разбор. Время в строке — первым:
Часы серверов обычно идут в UTC — так время в журнале, в access.log nginx и в хронологии совпадает. Своё действие удобно записывать сразу одной командой: date -u +%T печатает текущее время в UTC, а >> дописывает строку в конец файла, не стирая прежние.
Время того, что случилось до тебя, берут из журналов: секунда FIRING от lab-sitecheck — начало сбоя для пользователей. В строке — факты: что видно и что сделано, без догадок. «error.log nginx: connect() failed к 127.0.0.1:8000» — строка хронологии; «похоже, виноват nginx» — догадка, ей место в голове дежурного.
Часы машины идут в UTC, ты работаешь по Москве (UTC+3). Какую строку стоит дописать в хронологию?
-
16:27 — московское время, а журнал и access.log пишут UTC: строка встанет на три часа позже FIRING.
-
Это догадка и оценка человека. В хронологию пишут, что видно и что сделано: какой файл и что в нём поменялось.
-
Без времени строку не поставить на шкалу рядом с FIRING и откатом. Время — первым:
date -u +%T.
Время по часам машины (UTC) первым и факт без оценки — такую строку можно сопоставить с журналом и потом перенести в разбор. Московское время пришлось бы пересчитывать, а догадку — проверять заново.
Главное в шаге
- Хронология — строка «время событие» на каждое наблюдение и действие, с первой минуты инцидента.
-
Время — по часам машины в UTC:
date -u +%Tдля своих действий, журнал — для того, что было до тебя. - В строке — факты без догадок: по ним потом собирают разбор.