MTTD là gì? Cách đo thời gian phát hiện incident trong production

MTTD là viết tắt của Mean Time To Detect. Đây là chỉ số đo thời gian trung bình từ lúc sự cố bắt đầu cho đến khi hệ thống hoặc đội vận hành phát hiện ra sự cố đó.

Trong vận hành hệ thống, MTTD phản ánh khả năng phát hiện sự cố nhanh hay chậm. MTTD càng thấp thì càng giảm thời gian người dùng bị ảnh hưởng và giúp đội vận hành vào xử lý sớm hơn.

019c1482-aff3-7e37-9e12-d56a9bcec546

MTTD cho biết điều gì

MTTD trả lời các câu hỏi rất thực tế:

  • Sự cố bắt đầu lúc nào và mình biết được sau bao lâu
  • Monitoring và alert có đủ nhạy và đủ đúng không
  • Đội on-call có đang bị trễ vì alert thiếu rõ ràng hoặc quá nhiều cảnh báo nhiễu không

MTTD thấp thường đồng nghĩa bạn có cơ chế phát hiện tốt. Nhưng nếu MTTD thấp vì alert quá nhạy và bắn tràn lan thì sẽ gây alert fatigue và cuối cùng lại làm MTTD tăng.

Cách MTTD hoạt động và đo như thế nào

MTTD thường được tính bằng trung bình của nhiều incident.

  • Thời điểm bắt đầu sự cố: có thể là lúc error rate tăng, latency tăng, hoặc một thành phần bắt đầu down
  • Thời điểm phát hiện: là lúc alert được xác nhận, hoặc ticket incident được tạo, hoặc on-call acknowledge

Cách đo thực tế hay dùng:

  • Với incident có timeline rõ: lấy thời điểm incident start và thời điểm detect, rồi tính delta
  • Nếu có hệ thống incident management: dùng timestamp từ incident tool để chuẩn hoá

Điểm quan trọng là phải thống nhất định nghĩa “bắt đầu” và “phát hiện” trong đội, nếu không số liệu sẽ lệch và khó so sánh.

Ví dụ: Một service bắt đầu tăng 5xx lúc 10:00, alert bắn lúc 10:07 và on-call confirm lúc 10:10. Tuỳ định nghĩa, detect time có thể là 10:07 hoặc 10:10.

MTTD khác MTTR ra sao

Hai chỉ số hay đi cùng nhau nhưng khác mục tiêu:

  • MTTD đo thời gian phát hiện
  • MTTR đo thời gian khôi phục từ lúc phát hiện hoặc từ lúc bắt đầu, tuỳ cách định nghĩa

Có hệ thống MTTD thấp nhưng MTTR cao nếu phát hiện nhanh mà xử lý chậm vì thiếu runbook, thiếu quyền truy cập, hoặc hệ thống quá phức tạp.

MTTD bị ảnh hưởng bởi những yếu tố nào

Các yếu tố làm MTTD tăng:

  • Alert thiếu coverage: lỗi xảy ra nhưng không có alert phù hợp
  • Threshold đặt sai: quá cao nên không trigger, hoặc quá thấp làm nhiễu
  • Thiếu signal theo user impact: chỉ đo hạ tầng mà không đo trải nghiệm người dùng
  • Alert routing sai: bắn nhầm team hoặc không tới đúng on-call
  • Alert fatigue: quá nhiều cảnh báo làm người trực bỏ qua cảnh báo quan trọng
  • Observability thiếu correlation: alert báo symptom nhưng không chỉ ra nơi cần nhìn

Cách giảm MTTD trong production

Một số cách làm hiệu quả và dễ áp dụng:

  • Ưu tiên alert theo: error rate, latency, saturation của tài nguyên quan trọng
  • Dùng dashboard và alert theo SLO cho các luồng chính
  • Chuẩn hoá severity và routing để alert đến đúng người
  • Giảm nhiễu: gộp alert, chống alert lặp, tắt alert vô nghĩa
  • Viết runbook ngắn gọn kèm link dashboard và truy vấn log
  • Tổ chức postmortem để tìm lý do vì sao detect chậm và sửa lại alert

Ví dụ: Nếu nhiều incident chỉ được phát hiện qua khách báo, đó là dấu hiệu rõ ràng MTTD đang bị kéo lên vì monitoring không bám theo trải nghiệm người dùng.

Kết luận

MTTD là chỉ số đo thời gian phát hiện sự cố và là thước đo trực tiếp của chất lượng monitoring, alerting và quy trình on-call. Giảm MTTD thường bắt đầu từ việc alert đúng theo user impact, giảm cảnh báo nhiễu, và chuẩn hoá cách xác định thời điểm sự cố bắt đầu và thời điểm được phát hiện.

Thông tin nổi bật

Sự kiện phát trực tiếp​

Event Thumbnail

Báo cáo quan trọng

Article Thumbnail
Article Thumbnail

Sự kiện đang hiện hành

Chia sẻ bài viết:
Theo dõi
Thông báo của
0 Góp ý
Được bỏ phiếu nhiều nhất
Mới nhất Cũ nhất
Phản hồi nội tuyến
Xem tất cả bình luận

Tiêu điểm chuyên gia