Membangun alur incident management yang lengkap: detection & response, struktur peran (incident commander, communicator, deputy), komunikasi internal & eksternal, hingga blameless postmortem yang menutup siklus — lengkap dengan panduan simulasi incident drill untuk tim

Setelah di episode 6 kita memastikan alert berbunyi pada saat yang tepat dan on-call siap menjawab, pertanyaan berikutnya: apa yang terjadi setelah pager berbunyi? Inilah yang membedakan tim yang "sibuk" dari tim yang efektif: incident management bukan soal seberapa cepat semua orang panik, melainkan seberapa terstruktur tim merespons tekanan.
Tanpa struktur, insiden berubah menjadi kekacauan yang khas: semua orang membuka terminal, mencoba hal yang sama, tidak ada yang tahu siapa yang mengambil keputusan, dan status tidak pernah dikomunikasikan ke pihak yang menunggu. Episode ini membangun struktur itu — dari deteksi sampai postmortem — dan menutupnya dengan simulasi yang bisa kalian latih di tim.
Detection dimulai dari alert, tetapi tidak berhenti di sana. Sumber deteksi yang sehat:
Aturan penting: deteksi berakhir saat orang yang tepat sudah di-notify dengan konteks cukup. Jika alert sampai ke on-call tanpa konteks, itu bukan deteksi — itu teka-teki tengah malam.
Prinsip pertama respons yang sering dilupakan karena semangat debugging: stabilkan dulu, debug kemudian. Urutan yang benar:
Insiden yang parah bukan waktunya improvisasi komunikasi. Peran minimalnya:
Pola komunikasi status yang baik (format SUTC — status, update, timeline, current actions):
STATUS: P1 - checkout error (CRITICAL, sedang ditangani)
UPDATE: Error rate checkout naik 30x sejak 12:00 WIB, terkait rilis v2.4.1
TIMELINE: 12:00 rilis v2.4.1 -> 12:15 alert burn rate -> 12:20 rollback dimulai
NEXT: Rollback selesai, pantau burn rate 1 jamImportant
Satu aturan emas komunikasi insiden: semua update keluar dari satu communicator, dan update dijadwalkan — misalnya setiap 30 menit, apa pun hasilnya. "Tidak ada hal baru" pun dilaporkan, karena keheningan justru membuat semua orang membanjiri channel dengan pertanyaan yang sama.
Incident management yang baik diukur, bukan dirasakan:
| Metrik | Arti |
|---|---|
| MTTA (Mean Time to Acknowledge) | Waktu dari alert berbunyi sampai on-call meng-ack |
| MTTR (Mean Time to Resolve) | Waktu sampai layanan kembali normal |
| MTTD (Mean Time to Detect) | Waktu dari masalah terjadi sampai terdeteksi |
MTTR sering disalahartikan sebagai "waktu debug". Faktanya, perbaikan tercepat hampir selalu datang dari rollback dan failover — mekanisme yang disiapkan jauh sebelum insiden. Itulah kenapa episode 11 (release reliability) dan 16 (multi-region/DR) adalah investasi MTTR terbaik.
Insiden selesai bukan berarti pekerjaan selesai. Postmortem adalah jembatan dari "kenapa down?" menuju "kenapa tidak terulang?". Kuncinya satu kata: blameless — analisis tentang sistem dan proses, bukan tentang siapa.
Judul: [Tanggal] Insiden P1 - error massal checkout
Severity: P1 (budget habis 12 jam)
Ringkasan: error 500 naik 30x selama 2 jam, 18k order gagal
Timeline: (12:00) rilis v2.4.1 ... (14:15) rollback selesai
Root cause: fitur cache invalidation memperkenalkan race condition
Trigger: deployment + burst traffic
Pengaruh: ketersediaan 99.82% bulan ini
Actions: [A-001] tambah integrasi test untuk cache (P1, owner: x)
[A-002] ubah pipeline rilis jadi canary (P1, owner: y)Tip
Aturan praktis postmortem: satu insiden, satu akar masalah yang paling mungkin, tiga aksi terbaik. Tim yang mencantumkan dua puluh aksi biasanya tidak menyelesaikan satupun. Fokus membuat 2-3 aksi yang benar-benar menghilangkan akar masalahnya.
Kunci agar struktur ini bekerja saat tekanan nyata adalah melatihnya sebelum terjadi. Jadwalkan game day 60 menit:
docker stop sre-lab-demo-1
curl -s -o /dev/null -w "%{http_code}\n" localhost:8080/healthHasil drill yang baik bukan "tim berhasil memulihkan dalam 10 menit" — itu hasil akhir. Yang lebih penting: apakah prosesnya kelihatan mulus? Jika tidak, itulah yang harus diperbaiki.
Pada episode 7 ini, kalian telah membangun alur incident management yang lengkap.
Inti yang harus dibawa pulang:
Di episode 8 selanjutnya, kita beralih dari "merespons" ke "mencegah": capacity planning — load forecasting, menyiapkan headroom, dan strategi auto-scaling yang benar, lengkap dengan rencana kapasitas dan scaling untuk service kalian. Sampai jumpa di episode 8!