Observability (Khả năng quan sát)

Khả năng hiểu trạng thái BÊN TRONG hệ thống thông qua dữ liệu nó tạo ra (logs, metrics, traces) - trả lời câu hỏi “TẠI SAO điều này xảy ra?” thay vì chỉ “chuyện gì đang xảy ra?“.

Nếu Monitoring là đèn cảnh báo trên xe, thì Observability là việc mở nắp capo, cắm máy chẩn đoán để hiểu vì sao đèn bật sáng. Observability cho phép đặt câu hỏi mới về hành vi hệ thống mà không cần dự đoán trước mọi sự cố.

Ba trụ cột

Trụ cộtLà gìTrả lời
LogsBản ghi sự kiện (thời gian, mức độ, message, stack trace)“Chuyện gì đã diễn ra?” - điều tra chi tiết, lịch sử
MetricsSố liệu định lượng theo thời gian (time-series): req/s, latency, CPU%Phát hiện bất thường nhanh (spike/drop), đo mức ảnh hưởng
TracesĐường đi của một request qua các service (gắn ID + span)“Tại sao chậm/lỗi?” - tìm bottleneck trong hệ phân tán

Ba loại bổ sung nhau: metrics phát hiện vấn đề, logs cung cấp ngữ cảnh, traces cho bức tranh end-to-end.

Monitoring vs Observability

  • Monitoring: điều gì đang diễn ra + có bất thường không (chỉ số & kịch bản đã biết).
  • Observability: hiểu tại sao, kể cả tình huống chưa từng biết.
  • Monitoring là một phần của Observability.

Công cụ: ELK Stack (logs), Jaeger/Zipkin (traces), OpenTelemetry (framework chuẩn thu thập telemetry), Honeycomb/Lightstep, Datadog/New Relic.

Liên quan