Chuyển đến nội dung chính
Quay lại danh sách bài viết

อ่าน P95 Latency ด้วย histogram_quantile ใน Prometheus

histogram_quantile ประมาณ percentile จากจำนวน sample ใน bucket ของ Histogram อธิบายหลักการใช้งาน กรณีที่เหมาะ และข้อควรระวังจากเอกสารทางการ

อ่าน P95 Latency ด้วย histogram_quantile ใน Prometheus

histogram_quantile ประมาณ percentile จากจำนวน sample ใน bucket ของ Histogram เหมาะกับการติดตาม P95 หรือ P99 เพื่อดูประสบการณ์ผู้ใช้มากกว่าค่าเฉลี่ยอย่างเดียว บทความนี้สรุปแนวคิดจากเอกสารทางการของ Prometheus และจุดที่ควรตรวจเมื่อนำไปใช้จริง

ภาพรวม

Prometheus เก็บ metric เป็น time series จาก target ตามรอบ ความหมายของชื่อ metric, label และช่วงเวลาคิวรีมีผลต่อความถูกต้องของกราฟและต้นทุนเก็บข้อมูล

หัวข้อนี้ตอบโจทย์เฉพาะเรื่อง: histogram_quantile ประมาณ percentile จากจำนวน sample ใน bucket ของ Histogram จึงควรเริ่มจากปัญหาที่ต้องแก้และผลลัพธ์ที่คาดหวัง ไม่ใช่เพียงเปิดฟีเจอร์เพราะมีอยู่ในเครื่องมือ

หลักการทำงาน

การรวม bucket ตามขอบเขตที่ถูกต้องช่วยให้คำนวณ latency ระดับบริการจากหลาย instance ได้

ให้ตรวจทั้งสถานะที่เครื่องมือรายงานและผลลัพธ์ปลายทางที่ผู้ใช้หรือระบบอื่นได้รับ หากสองส่วนไม่ตรงกัน ควรกลับไปตรวจค่าตั้งต้นและขอบเขตที่ฟีเจอร์นี้รับผิดชอบก่อนเปลี่ยนค่าเพิ่มเติม

เหมาะกับงานแบบไหน

เหมาะกับการติดตาม P95 หรือ P99 เพื่อดูประสบการณ์ผู้ใช้มากกว่าค่าเฉลี่ยอย่างเดียว

ก่อนทดลอง ให้ระบุสิ่งที่จะใช้วัดผล เช่น เวลาตอบสนอง ความพร้อมใช้งาน ความถูกต้องของข้อมูล หรือภาระการดูแล แล้วเทียบกับสภาพเดิม วิธีนี้ช่วยให้รู้ว่าฟีเจอร์แก้ปัญหาจริงหรือย้ายภาระไปอีกจุดหนึ่ง

ขั้นตอนนำไปใช้

  1. กำหนดคำถามที่ metric หรือ alert ต้องตอบให้ชัด
  2. ตรวจผลคิวรีกับช่วงเวลาหลายขนาดและกรณี target หาย
  3. ติดตามจำนวน time series, เวลา query และความถี่ alert

เริ่มจากขอบเขตเล็กและเก็บผลทดสอบไว้กับการเปลี่ยนแปลง หากจะใช้ใน production ให้กำหนดผู้ติดตามผลและเงื่อนไขที่จะหยุดการขยายการใช้งาน

ข้อควรระวัง

ค่า percentile เป็นการประมาณและความละเอียดขึ้นกับ bucket ที่ออกแบบไว้

แปลงข้อควรระวังนี้เป็นรายการตรวจในการทบทวนงาน เพราะปัญหาจากค่าตั้งต้นอาจไม่แสดงทันทีในสภาพแวดล้อมทดสอบ

สรุป

histogram_quantile ประมาณ percentile จากจำนวน sample ใน bucket ของ Histogram เหมาะกับการติดตาม P95 หรือ P99 เพื่อดูประสบการณ์ผู้ใช้มากกว่าค่าเฉลี่ยอย่างเดียว ก่อนนำไปใช้กับงานหลัก ควรตรวจผลตามขั้นตอนข้างต้นและทบทวนข้อจำกัดของระบบที่มีอยู่

อ่านเพิ่มเติม: เอกสารทางการของ Prometheus

Chia sẻ bài viết:
Xem thêm bài viết