DevOps 02/09/2026 8 phút

40 panel làm tươi mỗi 10 giây tốn 12% một nhân cho mỗi người xem — và 'sum by' không làm Prometheus nhẹ đi một chút nào

Mỗi bảng điều khiển đang mở là một chuỗi truy vấn lặp lại mà không con số chi phí nào hiện lên màn hình người đang nhìn. Tôi đo trên Prometheus 21.563 chuỗi: gộp bằng sum by chỉ cắt phần trả về chứ không cắt phần đọc (nhanh hơn vỏn vẹn 1,88 lần), cái nó thật sự cứu là trình duyệt; bước là đòn bẩy lớn nhất; và chi phí nhân thẳng với số người đang mở — mười người là hơn một nhân trọn vẹn.

DevOps 02/09/2026 11 phút

Chuông trực ban reo sau 2 phút 43 giây kể từ lúc dịch vụ hỏng — và gần một phần ba khoảng đó không có nút nào chỉnh được

Tôi đo khoảng cách giữa lúc dịch vụ bắt đầu hỏng và lúc người trực ban biết. Với cấu hình Prometheus phổ biến (for: 2m), chuông reo sau 2 phút 43 giây — gấp 11 lần cấu hình nhanh nhất. Và có một cái sàn 14,6 giây không luật nào rút ngắn được, vì nó không nằm ở đó.

DevOps 02/09/2026 9 phút

BatchSpanProcessor mặc định lặng lẽ vứt 62,5% số trace của tôi — và nghịch lý là dịch vụ càng nhanh càng mất nhiều

opentelemetry-sdk thật, xuất OTLP, đo cả tốc độ lẫn số byte. Con số tốc độ đúng như dự đoán. Nhưng số span THỰC SỰ tới nơi thì không: hàng đợi mặc định 2.048 làm mất gần hai phần ba trace khi dịch vụ chạy nhanh, chỉ ghi đúng một dòng log. Không lỗi, không chỉ số.

DevOps 02/09/2026 9 phút

20.000 chỉ số Prometheus chỉ ăn 0,12% một lõi CPU — nhưng cái chết trước không phải RAM, mà là đĩa, sớm hơn 7,3 lần

Tôi đo chi phí tài nguyên thật của Prometheus tự dựng: 20.000 chuỗi tốn 0,12% một lõi và 69 MB RAM. Nhỏ đến mức 'tự dựng tốn máy' là sai. Nhưng nếu bạn chọn máy theo RAM, bạn sẽ mua một cỗ chết vì hết đĩa khi mới dùng một phần bảy số RAM đã trả.

DevOps 02/09/2026 9 phút

Quan sát một binary không có mã nguồn: proxy tốn 33 µs mỗi request, eBPF tốn 1,4 µs — nhưng ba lần đo đầu của tôi đều cho eBPF 0%, vì probe không hề chạy

Khi dịch vụ cần quan sát là một binary bạn không sửa được, còn hai đường: proxy sidecar hay eBPF. Proxy đắt hơn eBPF ~24 lần, nhưng cái 33 µs ấy là giá của ngữ nghĩa HTTP, không phải giá quan sát. Và bài học đắt nhất: một phép đo cho '0% chi phí' vì nó không hề chạy.

DevOps 02/09/2026 9 phút

svc-a mất 137 ms và trông như thủ phạm — nhưng nó chỉ tự làm 10 ms, kẻ ăn 101 ms nằm ở giữa chuỗi

Một yêu cầu đi qua bốn dịch vụ. Nhìn từ ngoài, hai sự cố khác hẳn nhau chỉ là một con số. Metric ở dịch vụ đầu bó tay, còn trace chỉ thẳng vào svc-c: tự làm 101,45 ms trong khi ba chặng kia đều quanh 10 ms. Bài học: đọc trace theo cột 'tự làm', đừng theo cột 'tổng'.