Ý chính: Giám sát chỉ có giá trị khi giúp đội ngũ đưa ra quyết định nhanh hơn.
Thuật ngữ trong bài: SLI: chỉ số đo chất lượng thực tế; SLO: mục tiêu chất lượng dịch vụ; error budget: mức lỗi cho phép trong một giai đoạn.
Bài toán thực tế
CPU và bộ nhớ có thể vẫn bình thường trong khi chức năng thanh toán hoặc xuất bản đang lỗi với một nhóm khách hàng. Quá nhiều dashboard và cảnh báo thiếu ưu tiên còn khiến đội ngũ bỏ qua tín hiệu quan trọng.
CPU và bộ nhớ chỉ mô tả sức khỏe tài nguyên, không nói người dùng có hoàn tất được công việc hay không. Điểm bắt đầu đúng là một hành trình quan trọng, chỉ số chất lượng của hành trình đó và mục tiêu dịch vụ đã thống nhất.
Từ tín hiệu cấp sản phẩm, đội ngũ mới đi xuống trace, nhật ký và chỉ số hạ tầng để tìm nguyên nhân. Làm ngược lại thường tạo ra rất nhiều dashboard nhưng ít quyết định.
Thiết kế và triển khai
- Định nghĩa SLI về tỷ lệ thành công và độ trễ tại đúng ranh giới người dùng trải nghiệm.
- Truyền mã trace và ngữ cảnh khách hàng theo chính sách giới hạn số lượng nhãn, tránh tạo chỉ số có cardinality vô hạn.
- Cảnh báo theo tốc độ tiêu hao ngân sách lỗi ở nhiều cửa sổ thời gian, kèm runbook và người chịu trách nhiệm.
Mã minh họa: Cảnh báo theo tốc độ tiêu hao ngân sách lỗi
budget = 1 - sloTarget
burnShort = errorRate(5m) / budget
burnLong = errorRate(1h) / budget
if burnShort > 14 and burnLong > 6:
page(owner, runbook, affectedJourney)Kết hợp cửa sổ ngắn và dài để bắt sự cố nhanh mà không đánh thức đội vận hành vì một đợt tăng lỗi ngắn, ít tác động.
Rủi ro cần tính trước
- Ngữ cảnh trace bị mất khi yêu cầu đi qua hàng đợi.
- Đưa mã khách hàng trực tiếp vào nhãn chỉ số tạo ra hàng triệu chuỗi thời gian.
- Nhật ký vô tình chứa token hoặc dữ liệu cá nhân trong lúc xử lý sự cố.
Nên theo dõi gì?
| Tín hiệu | Điều tín hiệu cho biết |
|---|---|
| Tốc độ tiêu hao ngân sách lỗi theo hành trình | Nối độ tin cậy với quyết định phát hành và đầu tư kỹ thuật. |
| P50, P95 và P99 theo khu vực | Phân biệt trải nghiệm thông thường với nhóm yêu cầu chậm bất thường. |
| Tỷ lệ mất dữ liệu giám sát và tỷ lệ lấy mẫu | Cho biết chính bằng chứng dùng để chẩn đoán có đang thiếu hay không. |
Đưa vào production từng bước
Chọn một hành trình gắn trực tiếp với doanh thu hoặc vận hành. Chạy SLI mới song song với cảnh báo cũ, đối chiếu với sự cố thật trong vài tuần và chỉ thay cảnh báo cũ khi tín hiệu mới chứng minh được giá trị.
Điều cần nhớ
Observability tốt biến tác động tới khách hàng thành quyết định vận hành nhanh và có bằng chứng, thay vì chỉ tạo thêm biểu đồ.
