Unit 7 / 11

Pengurusan Insiden dan Postmortem: Analisis Punca Punca dengan Kepintaran Buatan

Keuntungan:

  • Keupayaan untuk memahami kitaran hayat kejadian (pengesanan, triage, mitigasi, penyelesaian, bedah siasat), metrik MTTD/MTTR dan prinsip 'kurangkan dahulu, siasat kemudian'
  • Keupayaan untuk menggunakan AI untuk mengecilkan hipotesis pada masa kejadian dan menghasilkan lakaran postmortem yang tidak bersalah, mengesahkan setiap punca dengan data
  • Keupayaan untuk menerapkan disiplin penulisan dalam bahasa yang tidak menyalahkan postmortem dan berkongsi data acara dengan menutupnya.

Setiap sistem rosak akhirnya. Perbezaannya ialah cara pasukan yang baik membuat persediaan untuk acara yang tidak dapat dielakkan ini dan cara mereka belajar. Insiden ialah peristiwa tidak dijangka yang mengganggu atau mengancam untuk mengganggu perkhidmatan: ranap perkhidmatan, masa tindak balas melambung tinggi, kehilangan data. Pengurusan insiden bermaksud mengesan, mengurangkan, menyelesaikan insiden secepat mungkin, dan kemudian belajar daripadanya. Ini adalah disiplin yang mendorong profesional DevOps dan SRE (Site Reliability Engineering) siang dan malam.

Dua metrik kritikal mengukur kualiti acara: MTTD (Mean Time To Detect) dan MTTR (Mean Time To Recover). Matlamatnya adalah untuk mengecilkan kedua-duanya. AI menambahkan dua nilai besar di sini: meringkaskan log dan metrik dengan cepat pada masa kejadian untuk mengecilkan kemungkinan punca, dan dengan cepat merangka postmortem (laporan siasatan selepas peristiwa) selepas peristiwa itu. Tetapi keputusan tentang perjalanan acara - perkhidmatan mana yang hendak dimatikan, tarik balik, apa yang perlu dikatakan kepada pelanggan - adalah milik anda.

Kitaran hidup sesuatu peristiwa

  1. Pengesanan: Penggera berbunyi atau aduan pelanggan datang. Lagi cepat lagi bagus.
  2. Triage: Sejauh mana seriusnya? Apakah domain itu? Tahap keterukan diberikan—biasanya SEV1 (paling kritikal, keseluruhan sistem) kepada SEV4 (kecil).
  3. Kumpulkan pasukan respons anda. Dalam insiden kritikal, komander insiden mengambil alih penyelarasan.
  4. Kurangkan: Hentikan pendarahan dahulu — selalunya rollback atau menutup bendera. Anda akan mencari puncanya kemudian.
  5. Selesaikan: Gunakan pembetulan kekal.
  6. Belajar (postmortem): Apa yang berlaku, mengapa ia berlaku, bagaimana kita menghalangnya daripada berulang?
Petua: Salah satu kesilapan yang paling mahal pada masa kejadian ialah menangguhkan menghentikan pendarahan kerana "mari kita dapatkan punca sebenar terlebih dahulu." Peraturan: pengurangan pertama (pulihkan/pulihkan perkhidmatan), kemudian tanya. Berbalik kepada versi yang diketahui baik selalunya merupakan pengurangan terpantas.

Budaya postmortem bebas rasa bersalah

Tulang belakang pasukan yang sihat ialah budaya postmortem yang tidak bercela: matlamatnya bukanlah "siapa yang melakukannya," tetapi "sistem dan proses apakah yang membenarkan kesilapan ini?" adalah soalan. Orang ramai menyembunyikan kesilapan jika mereka tahu mereka akan dihukum; Ralat tersembunyi diulang. Postmortem bukan laporan tuduhan, tetapi dokumen pembelajaran.

Bedah siasat yang baik termasuk: ringkasan, impak (berapa ramai pengguna, berapa lama, berapa banyak wang), garis masa, punca(-punca), perkara yang berjalan dengan baik/teruk, dan item tindakan—langkah konkrit, masing-masing dengan pemilik dan tarikh.

Awas: Semasa menulis bedah siasat dengan AI, pastikan anda menghapuskan bahasa menuduh (iaitu "orang X membuat kesilapan"). Juga menutupi ID pelanggan, IP dalaman dan rahsia apabila menyuap data acara kepada AI — bedah siasat sering dikongsi secara meluas.

Analisis punca akar: 5 Mengapa dan AI

Teknik klasik ialah "5 Mengapa": tanya "mengapa?" kepada sesuatu masalah. Dengan bertanya lagi dan lagi, anda mendapat dari gejala cetek kepada akar sebenar. "Perkhidmatan ranap. Mengapa? Kehabisan ingatan. Mengapa? Terdapat kebocoran. Mengapa? Kemas kini perpustakaan..." AI cepat membina rantaian ini dan mencadangkan kemungkinan cawangan — tetapi anda mesti mengesahkan setiap "mengapa" dengan data anda; AI juga boleh membina rantaian yang munasabah tetapi salah.

Jadual keterukan

Tahap

Kesan

contoh

campur tangan

SEV1

Kerugian keseluruhan sistem/perniagaan kritikal

Bayaran jatuh sepenuhnya

Serta-merta, seluruh pasukan, komander

SEV2

Disfungsi utama

Log masuk gagal

Cepat, atas panggilan + sokongan

SEV3

Kesan separa/terhad

Laporan ditangguhkan

semasa waktu bekerja

SEV4

kecil/kosmetik

salah taip

beratur kerja biasa

tiga kes mini

Kes 1 — MTTR dari 45 minit hingga 8 minit. Perkhidmatan pembayaran ranap. Jurutera yang bertugas memberikan log bertopeng dan maklumat penggunaan terakhir kepada AI dan bertanya "Apakah pencetus yang paling mungkin berlaku dalam 20 minit terakhir?" dia bertanya. AI menunjukkan bahawa keruntuhan bermula pada minit yang sama dengan penggunaan terakhir. Jurutera itu segera melancarkan versi itu; Perkhidmatan itu kembali dalam 8 minit. Punca punca (pepijat kolam sambungan dalam versi baharu) kemudiannya disiasat dengan mudah.

Kes 2—lakaran bedah siasat dalam 20 minit. Selepas SEV2, pasukan itu letih dan tidak mempunyai kekuatan untuk menulis laporan; selalunya laporan itu tertangguh berminggu-minggu. Kali ini, mereka memberikan garis masa dan nota kejadian kepada AI dan menghasilkan lakaran bedah siasat bebas jenayah. AI mencipta rangka kerja yang kemas untuk impak, garis masa dan item tindakan; Pasukan itu mengisinya dengan fakta dan menerbitkannya dalam masa 20 minit. Pelajaran itu tidak hilang.

Kes 3 — punca salah ditangkap. Dalam satu kes, AI mengatakan "root cause database overload" dan ia kelihatan munasabah. Tetapi jurutera mengesahkan metrik: beban pangkalan data adalah normal pada masa kejadian. Punca sebenar ialah masalah DNS luaran. Hipotesis awal AI adalah cair tetapi salah; Pengesahan dengan data menghalang laporan daripada diterbitkan dengan kesimpulan yang salah.

Empat templat yang boleh disalin

1) Triage pantas pada masa kejadian:

Kami sedang mengalami acara produksi. Gejala bertopeng: [SIMPTOM].Perubahan terakhir: [LAST DEPLOY/CHANGE]. Beri saya:(1) 3 hipotesis punca yang berkemungkinan besar mengikut urutan kebarangkalian,(2) arahan/metrik yang akan mengesahkan setiap satu dalam 1 minit, (3) langkah pengurangan SELAMAT terpantas (cth. rollback). Tegasnya; Nyatakan bahawa saya mesti mengesahkan setiap hipotesis.

2) Lakaran bedah siasat yang tidak bersalah:

Tulis lakaran bedah siasat tanpa cela daripada nota kejadian di bawah. Bahagian: Ringkasan, Kesan (pengguna/tempoh/kos), Garis Masa, Punca punca, Perkara yang berjalan lancar, Perkara yang berlaku dengan teruk, Item tindakan (masing-masing dengan medan pemilik + tarikh). Fokus pada penamaan, proses dan sistem. Nota: [BERMASKID]

3) Analisis 5 Mengapa:

Bina rantai "5 Whys", bermula dengan simptom berikut: [SIMPTOM]. Tunjukkan jika terdapat lebih daripada satu cabang yang mungkin pada setiap langkah. Di sebelah setiap "mengapa" tulis bukti (log/metrik) yang akan saya lihat untuk mengesahkannya. Pada penghujungnya, tandakan langkah mana yang belum disahkan lagi.

4) Mencipta item yang boleh diambil tindakan:

Mengikut punca ini, cadangkan item yang boleh diambil tindakan yang akan menghalang peristiwa yang sama daripada berulang. Kelaskan setiap item mengikut: (a) pencegahan, pengesanan atau pengurangan, (b) anggaran usaha, (c) kesan. Isih mengikut nisbah impak/usaha tertinggi. Punca utama: [X]

Gesaan lemah / Gesaan kuat

Lemah: "Perkhidmatan telah ranap, apa yang perlu saya lakukan?"

Keputusan: tiada konteks; AI boleh membuat pengesyoran umum yang tidak sesuai dengan kes anda, malah boleh menghasilkan punca yang pasti.

Kuat: "Perkhidmatan pembayaran pengeluaran telah memberikan 5xx selama 5 minit. Penggunaan terakhir ialah 6 minit yang lalu. Berikan 3 hipotesis punca yang berkemungkinan besar mengikut kebarangkalian, beritahu arahan yang akan mengesahkan setiap satu daripadanya dan cadangkan pengurangan selamat terpantas. Jangan spesifik, nyatakan bahawa saya perlu mengesahkan."

Perbezaan: gesaan kedua memberikan simptom, masa dan perubahan terakhir; ia menuntut hipotesis + pengesahan + pengurangan dan memastikan AI tidak tepat.

Kesilapan biasa

  • Mencari punca sebenar sebelum mengurangkan. Ia melambatkan menghentikan pendarahan dan meningkatkan MTTR.
  • Menerbitkan hipotesis pertama AI tanpa mengesahkannya. Cecair tetapi punca palsu menyebabkan kebocoran ke dalam laporan.
  • Bahasa menuduh. Postmortem ditulis tanpa nama memupuk penyembunyian dan kesilapan berulang.
  • Laporan berorientasikan tindakan tanpa titik peluru. Cadangan tanpa pemilik dan tarikh tidak akan dilaksanakan.
  • Berkongsi data acara tanpa menyembunyikannya. Postmortem pergi ke khalayak luas; data rahsia/peribadi bocor.
  • Tidak menyediakan laluan rollback terlebih dahulu. Jika pembalikan tidak praktikal, pengurangan diperlahankan.

Secara ringkasnya

Pengurusan insiden adalah mengenai pengesanan, pengurangan, penyelesaian dan pembelajaran dengan cepat daripada kejadian yang tidak dapat dielakkan; MTTD dan MTTR ialah metrik utama. Peraturan emas ialah "kurangkan dahulu, siasat kemudian" dan berbalik kepada versi yang diketahui-baik selalunya merupakan mitigasi terpantas. AI amat berharga dalam meringkaskan log pada masa kejadian, mengecilkan hipotesis dan menghasilkan lakaran bedah siasat yang tidak bercela selepas peristiwa itu — tetapi adalah menjadi tanggungjawab anda untuk mengesahkan setiap hipotesis punca dengan data, membersihkan bahasa kesalahan dan menyembunyikan data peristiwa.

Tugasan permohonan

Pertimbangkan peristiwa masa lalu (atau fiksyen). (1) Minta AI menjana hipotesis dan langkah pengesahan dengan templat “on-the-scene rapid triage”; Perhatikan hipotesis yang boleh disahkan oleh data. (2) Lakarkan laporan menggunakan templat "garis besar postmortem tidak bersalah" dan isikannya dengan fakta. (3) Kenal pasti sekurang-kurangnya dua item yang boleh diambil tindakan dan tetapkan pemilik dan tarikh untuk setiap item.

senarai semak

  • [ ] Pada masa kejadian, saya mula-mula berfikir untuk mengurangkan (rollback/shutdown) dan meninggalkan punca sehingga kemudian.
  • [ ] Saya mengesahkan setiap hipotesis punca utama AI dengan log/metrik.
  • [ ] Saya menulisnya dalam bahasa yang tidak menyalahkan postmortem, memfokuskan pada proses dan sistem.
  • [ ] Saya memberikan setiap item yang boleh diambil tindakan pemilik dan tarikh.
  • [ ] Saya menyembunyikan maklumat rahsia dan peribadi daripada data acara yang saya berikan kepada AI.
  • [ ] Saya menetapkan tahap keterukan dengan betul mengikut kesannya.