Prometheus là hệ monitoring kèm time-series database, thu thập số liệu theo mô hình pull: server tự đi scrape endpoint /metrics của các target theo chu kỳ (khác mô hình push, nơi ứng dụng tự đẩy đi). Target được tìm qua service discovery (K8s, file, DNS).
- PromQL: ngôn ngữ truy vấn để tổng hợp, tính rate, phân vị từ dữ liệu chuỗi thời gian.
- Alertmanager: nhận alert từ rule và định tuyến/gom/khử trùng thông báo.
- Grafana: thường ghép để trực quan hóa dashboard.
Bốn loại metric:
1. Counter — chỉ tăng đơn điệu (tổng request, lỗi); reset khi restart.
2. Gauge — giá trị lên xuống (nhiệt độ, số kết nối, mức bộ nhớ).
3. Histogram — đếm quan sát vào các bucket (phân phối độ trễ) → tính phân vị phía server.
4. Summary — tự tính quantile phía client.
Prometheus mạnh cho metric số; log/trace cần công cụ khác (ELK, Jaeger).