Blameless postmortem là bản tổng kết sự cố tập trung vào hệ thống và quy trình đã cho phép lỗi xảy ra, không vào cá nhân đã bấm nút. Giả định nền: người tham gia đã hành động hợp lý với thông tin họ có tại thời điểm đó.
Vì sao phải blameless — lý do thực dụng, không phải vì tử tế: nơi nào quy trách nhiệm cá nhân, nơi đó người ta giấu thông tin — không báo sự cố nhỏ, mô tả mập mờ, tránh nhận đã chạy lệnh gì. Mất dữ liệu đó thì không sửa được nguyên nhân thật, và chính lỗi ấy sẽ quay lại với người khác. Ngoài ra "vì bạn A gõ nhầm lệnh" là điểm dừng giả: câu hỏi đúng là vì sao một lệnh gõ nhầm lại có thể xóa được production.
Cấu trúc thường dùng:
- Tóm tắt — chuyện gì, kéo dài bao lâu, mức ảnh hưởng.
- Ảnh hưởng — định lượng: bao nhiêu người dùng, bao nhiêu request lỗi, tiêu bao nhiêu error budget.
- Dòng thời gian — theo giờ, từ lúc thay đổi được đưa vào đến khi phục hồi, kèm mốc phát hiện và mốc giảm thiểu.
- Nguyên nhân gốc — đào tiếp cho tới lớp hệ thống, không dừng ở thao tác của con người.
- Cái gì đã chạy tốt — thứ hay bị bỏ, nhưng cần để biết cơ chế phòng vệ nào đang có tác dụng và phải giữ.
- Hành động tiếp theo — có người phụ trách và deadline, ưu tiên theo thứ tự: chặn đứt hẳn nguyên nhân > giảm thiểu tự động > rút ngắn thời gian phát hiện > cập nhật runbook.
Hai chỉ dấu của postmortem yếu: hành động toàn dạng "cẩn thận hơn khi deploy" (không kiểm chứng được), và danh sách hành động không ai theo dõi tới lúc xong. Việc rút ra bài học chỉ có giá trị khi các mục hành động thực sự được đóng.