Jedinica 7 / 11

Upravljanje incidentima i obdukcija: analiza temeljnih uzroka s umjetnom inteligencijom

Dobici:

  • Sposobnost razumijevanja životnog ciklusa incidenta (otkrivanje, trijaža, ublažavanje, rješavanje, obdukcija), MTTD/MTTR metrike i načelo 'prvo ublaži, istraži kasnije'
  • Sposobnost korištenja umjetne inteligencije za sužavanje hipoteza u vrijeme incidenta i izradu besprijekorne postmortem skice, potvrđujući svaki temeljni uzrok podacima
  • Sposobnost primjene discipline pisanja na jeziku koji ne okrivljuje postmortem i dijeljenje podataka o događaju prikrivanjem.

Svaki sustav se na kraju pokvari. Razlika je u tome kako se dobri timovi pripremaju za ovaj neizbježni događaj i kako uče. Incident je neočekivani događaj koji remeti ili prijeti prekidom usluge: pad usluge, naglo povećanje vremena odgovora, gubitak podataka. Upravljanje incidentima znači otkrivanje, ublažavanje, rješavanje incidenta što je brže moguće, a zatim učenje iz njega. Ovo je disciplina koja pokreće DevOps i SRE (Site Reliability Engineering) profesionalce dan i noć.

Dvije kritične metrike mjere kvalitetu događaja: MTTD (srednje vrijeme do otkrivanja) i MTTR (srednje vrijeme do oporavka). Cilj je smanjiti oboje. AI ovdje dodaje dvije velike vrijednosti: brzo sažimanje zapisa i metrike u vrijeme događaja kako bi se suzio mogući temeljni uzrok i brzo sastavljanje obdukcije (izvješće o istrazi nakon događaja) nakon događaja. Ali odluke o tijeku događaja - koju uslugu isključiti, vratiti, što reći korisniku - su vaše.

Životni ciklus događaja

  1. Detekcija: Oglašava se alarm ili dolazi pritužba kupca. Što prije to bolje.
  2. Trijaža: Koliko je ozbiljno? Što je domena? Dodjeljuju se razine ozbiljnosti—obično SEV1 (najkritičniji, cijeli sustav) do SEV4 (manji).
  3. Okupite svoj tim za odgovor. U kritičnim incidentima, zapovjednik incidenta preuzima koordinaciju.
  4. Ublažavanje: Prvo zaustavite krvarenje - često vraćanje unatrag ili pokrivanje zastavice. Kasnije ćete pronaći temeljni uzrok.
  5. Rješavanje: Primjena trajnog popravka.
  6. Naučite (postmortem): Što se dogodilo, zašto se dogodilo, kako spriječiti da se ponovi?
Savjet: Jedna od najskupljih pogrešaka u trenutku incidenta je odgađanje zaustavljanja krvarenja jer "hajmo prvo doći do točnog uzroka." Pravilo: prvo smanji (vrati/vrati uslugu), zatim upit. Vraćanje na poznatu ispravnu verziju često je najbrže ublažavanje.

Postmortem kultura bez osjećaja krivnje

Okosnica zdravih timova je kultura besprijekorne postmortem: cilj nije "tko je to učinio", već "koji je sustav i proces dopustio ovu grešku?" pitanje je. Ljudi skrivaju pogrešku ako znaju da će biti kažnjeni; Skrivena greška se ponavlja. Postmortem nije izvješće o optužbi, već dokument učenja.

Dobra obdukcija uključuje: sažetak, utjecaj (koliko korisnika, koliko dugo, koliko novca), vremensku crtu, temeljni uzrok(e), što je prošlo dobro/loše i radnje - konkretne mjere, svaka s vlasnikom i datumom.

Oprez: kada pišete obdukcije pomoću umjetne inteligencije, svakako uklonite optužujući jezik (to jest "osoba X je pogriješila"). Također maskirajte klijentske ID-ove, interne IP-ove i tajne kada unosite podatke o događajima u AI ​​— obdukcije se često dijele široko.

Analiza temeljnih uzroka: 5 zašto i AI

Klasična tehnika je "5 zašto": pitajte "zašto?" na problem. Pitajući uvijek iznova, dolazite od površnog simptoma do pravog korijena. "Usluga se srušila. Zašto? Nedostaje memorije. Zašto? Došlo je do curenja. Zašto? Ažuriranje knjižnice..." AI brzo gradi ovaj lanac i predlaže moguće grane — ali morate potvrditi svaki "zašto" sa svojim podacima; AI također može izgraditi razuman, ali pogrešan lanac.

Tablica ozbiljnosti

Razina

Utjecaj

primjer

intervencija

SEV1

Cijeli sustav/kritični poslovni gubitak

Plaćanje je potpuno palo

Odmah, cijeli tim, zapovjednik

SEV2

Velika disfunkcija

Prijave nisu uspjele

Brzo, na poziv + podrška

SEV3

Djelomični/ograničeni učinak

Izvješće kasni

tijekom radnog vremena

SEV4

mala/kozmetička

tipfeler

obični radni red

tri mini kućišta

Slučaj 1 — MTTR od 45 minuta do 8 minuta. Usluga plaćanja se srušila. Inženjer na dužnosti dao je maskirane zapise i posljednje informacije o raspoređivanju AI ​​i upitao "Koji je najvjerojatniji okidač u posljednjih 20 minuta?" upita on. AI je pokazao da je kolaps započeo u istoj minuti kad i posljednje postavljanje. Inženjer je odmah vratio tu verziju; Usluga se vratila za 8 minuta. Glavni uzrok (pogreška u bazenu veze u novoj verziji) je zatim prikladno istražen.

Slučaj 2—posmrtna skica u 20 minuta. Nakon SEV2, tim je bio umoran i nije imao snage napisati izvještaj; često je izvješće kasnilo tjednima. Ovaj put su AI-ju dali vremensku traku i bilješke o incidentu i izradili postmortem skicu bez zločina. AI je stvorio uredan okvir za utjecaj, vremenski okvir i radnje; Ekipa ga je napunila činjenicama i objavila u 20 minuta. Lekcija nije izgubljena.

Slučaj 3 — uhvaćen krivi uzrok. U jednom slučaju, AI je rekao "glavni uzrok preopterećenja baze podataka" i to se činilo razumnim. Ali inženjer je potvrdio metriku: opterećenje baze podataka bilo je normalno u vrijeme incidenta. Pravi uzrok bio je vanjski problem s DNS-om. Početna hipoteza o umjetnoj inteligenciji bila je fluidna, ali pogrešna; Validacija s podacima spriječila je objavu izvješća s netočnim zaključkom.

Četiri predloška za kopiranje

1) Brza trijaža u trenutku incidenta:

Doživljavamo produkcijski događaj. Maskirani simptomi: [SIMPTOM]. Zadnje promjene: [ZADNJA PRIMJENA/PROMJENA]. Daj mi: (1) 3 najvjerojatnije hipoteze o uzroku prema vjerojatnosti, (2) naredbu/metriku koja će potvrditi svaku u 1 minuti, (3) najbrži SIGURNI korak ublažavanja (npr. vraćanje). Strogo govoreći; Navedite da moram provjeriti svaku hipotezu.

2) Nevina posmrtna skica:

Napišite besprijekornu posmrtnu skicu iz bilješki događaja ispod. Odjeljci: Sažetak, Utjecaj (korisnik/trajanje/cijena), Vremenska linija, Glavni uzroci, Što je prošlo dobro, Što je prošlo loše, Stavke radnje (svaka s vlasnikom + polje datuma). Usredotočite se na imenovanje, proces i sustav. Bilješke: [MASKIRANI]

3) Analiza 5 zašto:

Izgradite lanac "5 zašto", počevši od sljedećeg simptoma: [SYMPTOM]. Pokaži postoji li više od jedne moguće grane u svakom koraku. Pored svakog "zašto" napišite dokaz (log/metriku) koji ću pogledati da to potvrdim. Na kraju označite koji koraci još nisu verificirani.

4) Stvaranje korisnih stavki:

U skladu s ovim temeljnim uzrokom, predložite djelotvorne stavke koje će spriječiti ponavljanje istog događaja. Klasificirajte svaku stavku prema: (a) prevenciji, otkrivanju ili smanjenju, (b) procijenjenom naporu, (c) utjecaju. Poredaj po najvećem omjeru učinka/napora. Glavni uzrok: [X]

Slab upit / Jak upit

Slab: "Usluga se srušila, što da radim?"

Rezultat: bez konteksta; Umjetna inteligencija može dati općenite preporuke koje ne odgovaraju vašem slučaju, a može čak doći i do konačnog temeljnog uzroka.

Strong: "Usluga plaćanja proizvodnje daje 5xx već 5 minuta. Posljednja implementacija bila je prije 6 minuta. Dajte 3 najvjerojatnije hipoteze o uzroku prema vjerojatnosti, recite naredbi koja će provjeriti svaku od njih i predložite najbrže sigurno ublažavanje. Nemojte biti precizni, recite da moram potvrditi."

Razlika: drugi prompt daje simptom, vrijeme i posljednju promjenu; zahtijeva hipotezu + provjeru + redukciju i održava AI nepreciznom.

Uobičajene greške

  • Traženje točnog temeljnog uzroka prije ublažavanja. Odgađa zaustavljanje krvarenja i povećava MTTR.
  • Objavljivanje prve hipoteze o umjetnoj inteligenciji bez njezine provjere. Tekući, ali lažni glavni uzroci cure u izvješće.
  • Optužujući jezik. Postmortalno napisano anonimno potiče prikrivanje i ponavljanje pogreške.
  • Izvješće orijentirano na akciju bez nabrajanja. Prijedlog bez vlasnika i datuma nikada neće biti implementiran.
  • Dijeljenje podataka o događaju bez maskiranja. Postmortem ide širokoj publici; tajni/osobni podaci su procurili.
  • Nepriprema putanje povratka unaprijed. Ako preokret nije praktičan, smanjenje se usporava.

Ukratko

Upravljanje incidentima odnosi se na brzo otkrivanje, ublažavanje, rješavanje i učenje iz neizbježnih događaja; MTTD i MTTR ključne su metrike. Zlatno pravilo je "najprije ublažiti, kasnije istražiti", a vraćanje na poznatu dobru verziju često je najbrže ublažavanje. Umjetna inteligencija je neprocjenjiva u sažimanju zapisa u vrijeme događaja, sužavanju hipoteza i stvaranju besprijekornih postmortalnih skica nakon događaja — ali vaša je odgovornost potvrditi svaku hipotezu temeljnog uzroka podacima, očistiti jezik krivnje i maskirati podatke o događaju.

Zadatak aplikacije

Razmotrite prošli (ili izmišljeni) događaj. (1) Neka AI generira hipoteze i korake provjere s predloškom "brze trijaže na licu mjesta"; Zabilježite koju hipotezu podaci mogu potvrditi. (2) Skicirajte izvješće koristeći predložak „nije kriv post mortem pregled” i ispunite ga činjenicama. (3) Identificirajte najmanje dvije aktivne stavke i svakoj dodijelite vlasnika i datum.

popis za provjeru

  • [ ] U vrijeme incidenta prvo sam pomislio na ublažavanje (vraćanje/isključivanje) i ostavio glavni uzrok za kasnije.
  • [ ] Provjerio sam svaku hipotezu o uzroku umjetne inteligencije pomoću log/metrike.
  • [ ] Napisao sam to jezikom koji ne okrivljuje postmortem, fokusirajući se na proces i sustav.
  • [ ] Svakoj radnoj stavci dodijelio sam vlasnika i datum.
  • [ ] Zamaskirao sam tajne i osobne informacije iz podataka o događajima koje sam dao AI-ju.
  • [ ] Ispravno sam dodijelio razinu ozbiljnosti prema udaru.