Incident
Také známo jako Outage, Výpadek, Postmortem
Stručně
Produkce je pro uživatele rozbitá: jeden člověk vede, ostatní opravují a celá časová osa se zapisuje.
Incident je každá událost, kdy produkt pro skutečné uživatele neplní svou práci natolik, že je potřeba zastavit práci na funkce a řešit. Má závažnost (kdo se budí), člověka, který ho řídí, a písemnou časovou osu. Dobrý tým v incidentech nepoznáte podle toho, že je nemá, ale podle toho, že je zkracuje a učí se z nich.
Závažnost a role člověka, který vede
Jednoduchá stupnice stačí: SEV1 — platící zákazníci nemůžou koupit nebo se přihlásit, všichni; SEV2 — funkce nefunguje části uživatelů, oprava do pár hodin v pracovní době; SEV3 — zhoršené nebo kosmetické, další sprint. Závažnost určuje, kdo se budí a jestli se to dozví šéf, ne kdo je na vině.
Člověk, který incident vede, nemusí být ten, kdo ví nejvíc. Jeho úlohou je říkat nahlas „myslíme si, že je to X, pojďme to ověřit“, držet časovou osu, rozhodnout o rollbacku a komunikovat. V malém týmu ji může držet i ten, kdo opravuje, ale na třicet sekund musí přestat opravovat a napsat, co se vyloučilo.
Co zapisovat, dokud to běží
Čas a pozorování: 14:02 nasazení verze 41, 14:05 chybovost vyskočila na 12 %, 14:07 spuštěn rollback, 14:11 chybovost zpět na 0,4 %. A také co jste vyzkoušeli a vyloučili — další člověk to nebude vědět a čerstvý pohled projde stejnou slepou uličkou.
Postmortem je konstrukčně bez viny: ptá se, co systém dovolil, ne kdo to napsal. „Žádné pravidlo nebránilo migraci bez zálohy“ je akční; „Jan nasazoval v pátek“ není. Skončete dvěma třemi konkrétními úkoly s vlastníky a termíny a příští měsíc je zkontrolujte. Analýza incidentu, ze které vznikne dokument, který už nikdo neotevře, je jen formalita.
Zdroje
Související pojmy
Observability
Logy, metriky, tracey a sledování chyb dohromady — dost na to, abyste bez hádání zjistili, proč byl požadavek pomalý.
CI/CD
Pipeline, která otestuje každý commit a drží main nasaditelné — malé změny místo jednoho velkého riskantního nasazení.
Technický dluh
Zkratky v kódu, které dnes fungují a od zítřka si účtují úrok — pomalejší změny, víc chyb, dražší provoz.