Prinsip dalam pilar keandalan Google Cloud Well-Architected Framework ini memberikan rekomendasi untuk membantu Anda melakukan postmortem yang efektif setelah kegagalan dan insiden.
Prinsip ini relevan dengan area fokus pembelajaran keandalan.
Ringkasan prinsip
Postmortem adalah catatan tertulis tentang insiden, dampaknya, tindakan yang diambil untuk memitigasi atau menyelesaikan insiden, penyebab utama, dan tindakan lanjutan untuk mencegah insiden terulang kembali. Tujuan postmortem adalah belajar dari kesalahan dan tidak menyalahkan siapa pun.
Diagram berikut menunjukkan alur kerja postmortem:
Alur kerja postmortem mencakup langkah-langkah berikut:
- Membuat postmortem
- Mencatat fakta
- Mengidentifikasi dan menganalisis akar masalah
- Rencanakan masa depan
- Menjalankan rencana
Lakukan analisis postmortem setelah peristiwa besar dan peristiwa non-besar seperti berikut:
- Periode nonaktif atau penurunan performa yang terlihat oleh pengguna di luar batas tertentu.
- Kehilangan data dalam bentuk apa pun.
- Intervensi dari engineer yang bertugas, seperti rollback rilis atau pengalihan traffic.
- Waktu penyelesaian di atas batas yang ditentukan.
- Kegagalan pemantauan, yang biasanya menyiratkan penemuan insiden secara manual.
Rekomendasi
Tentukan kriteria postmortem sebelum insiden terjadi agar semua orang tahu kapan postmortem diperlukan.
Untuk melakukan postmortem yang efektif, pertimbangkan rekomendasi dalam subbagian berikut.
Melakukan postmortem tanpa menyalahkan
Postmortem yang efektif berfokus pada proses, alat, dan teknologi, serta tidak menyalahkan individu atau tim. Tujuan analisis postmortem adalah untuk meningkatkan teknologi dan masa depan Anda, bukan untuk mencari siapa yang bersalah. Semua orang membuat kesalahan. Tujuannya adalah untuk menganalisis kesalahan dan belajar dari kesalahan tersebut.
Contoh berikut menunjukkan perbedaan antara masukan yang menyalahkan dan masukan tanpa menyalahkan:
- Masukan yang menyalahkan: "Kita perlu menulis ulang seluruh sistem backend yang rumit! Sistem ini mengalami kerusakan setiap minggu selama tiga kuartal terakhir dan saya yakin kita semua lelah memperbaikinya sedikit demi sedikit. Serius, kalau aku dipanggil sekali lagi, aku akan menulis ulang sendiri…"
- Masukan tanpa menyalahkan: "Item tindakan untuk menulis ulang seluruh sistem backend mungkin dapat mencegah halaman ini terus terjadi. Manual pemeliharaan untuk versi ini cukup panjang dan sangat sulit untuk dipelajari sepenuhnya. Saya yakin engineer on-call kita di masa mendatang akan berterima kasih kepada kita."
Membuat laporan postmortem dapat dibaca oleh semua audiens yang dituju
Untuk setiap informasi yang ingin Anda sertakan dalam laporan, nilai apakah informasi tersebut penting dan diperlukan untuk membantu audiens memahami apa yang terjadi. Anda dapat memindahkan data dan penjelasan tambahan ke lampiran laporan. Peninjau yang memerlukan informasi lebih lanjut dapat memintanya.
Hindari solusi yang rumit atau terlalu direkayasa
Sebelum Anda mulai mencari solusi untuk suatu masalah, evaluasi seberapa penting masalah tersebut dan kemungkinan terjadinya kembali. Menambahkan kompleksitas ke sistem untuk menyelesaikan masalah yang kemungkinan tidak akan terjadi lagi dapat menyebabkan peningkatan ketidakstabilan.
Membagikan postmortem seluas mungkin
Untuk memastikan bahwa masalah tidak dibiarkan tanpa penyelesaian, publikasikan hasil postmortem kepada audiens yang luas dan dapatkan dukungan dari manajemen. Nilai postmortem sebanding dengan pembelajaran yang terjadi setelah postmortem. Jika makin banyak orang yang belajar dari insiden, kemungkinan kegagalan serupa terulang akan berkurang.