Bốn giai đoạn, theo đúng thứ tự:
1. Phát hiện. Alert triệu chứng nổ, hoặc người dùng báo. Ghi mốc thời gian ngay — về sau cần nó để tính thời lượng và dựng lại dòng sự kiện.
2. Phân vai (với sự cố lớn). Ba vai tách bạch:
- Incident commander — điều phối, ra quyết định, không tự tay sửa. Người vừa gõ lệnh vừa điều phối sẽ mất một trong hai.
- Operations — người thực sự thao tác lên hệ thống.
- Communications — cập nhật cho stakeholder và khách hàng theo nhịp cố định.
3. Giảm thiểu (mitigation). Mục tiêu duy nhất: khôi phục dịch vụ cho người dùng. Các đòn thường dùng: rollback bản deploy gần nhất, tắt feature flag, chuyển traffic sang region khác, tăng số instance, chặn nguồn gây quá tải.
4. Khắc phục nguyên nhân. Làm sau khi đã ổn định, ở nhịp bình thường, có review và test tử tế.
Vì sao giảm thiểu đi trước: người dùng đang chịu ảnh hưởng ở từng phút, còn tìm nguyên nhân gốc là việc không ước lượng được thời gian — có thể 5 phút, có thể 5 giờ. Rollback đưa hệ thống về trạng thái đã biết là tốt trong vài phút, kể cả khi chưa ai hiểu vì sao bản mới hỏng. Ngoài ra, sửa vội dưới áp lực và không qua review thường tạo ra sự cố thứ hai chồng lên sự cố thứ nhất.
Ngoại lệ: nếu nguyên nhân đã hiển nhiên và bản sửa nhỏ hơn hẳn rủi ro rollback (ví dụ một dòng cấu hình sai), sửa thẳng là hợp lý. Nguyên tắc vẫn giữ nguyên — chọn đường ngắn nhất đưa người dùng trở lại bình thường.
Một thói quen đáng giá: viết dòng thời gian ngay trong kênh sự cố lúc đang xử lý. Sau đó dựng lại từ trí nhớ luôn thiếu và lệch.