การสังเกตการณ์ระบบ
ใช้ Prometheus และ OpenTelemetry เพื่อดูทราฟฟิกรวม ข้อผิดพลาด การดาวน์โหลด และการใช้งานหน้าเว็บ โดยไม่ติดตามผู้เข้าชมรายบุคคล
Prometheus เมตริก
[metrics]
enabled = true
listen = "127.0.0.1:9100"
การส่งออก OTLP
FLUXHEIM_OTLP=enabled
OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4318
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
OTEL_METRIC_EXPORT_INTERVAL=5000
The การสังเกตการณ์ระบบ compose stack sets these for the website service. Set FLUXHEIM_OTLP=disabled to run the same binary without exporting เมตริก or traces.
เวอร์ชัน 1.6.37 ทำให้ local observability smoke เชื่อถือได้ขึ้น โดย retry การเริ่ม Prometheus และ Jaeger แบบชั่วคราวด้วยพอร์ตใหม่เมื่อ host-network ports แข่งกับ runner processes อื่น.
เก็บ labels ให้มี cardinality ต่ำ: route group, language, status class, download artifact และ GitHub target มีประโยชน์ ไม่มี raw IP address หรือ user identifier
สิ่งที่ต้องแดชบอร์ด
| สัญญาณ | ทำไมมันถึงสำคัญ |
|---|---|
| request ตาม route | Shows which สาธารณะ pages and docs are being used. |
| request ตามภาษา | แสดงว่าภาษาใดจำเป็นต้องได้รับการดูแลมากที่สุด |
| status class | แสดงข้อผิดพลาดโดยไม่ติดตามผู้ใช้แต่ละราย |
| Download clicks | แสดงว่าอาร์ติแฟกต์การเผยแพร่ใดมีประโยชน์ |
| คลิก GitHub | แสดงว่าลิงก์โครงการภายนอกใดมีความสำคัญ |
ขอบเขต privacy
- ใช้ counter และ histogram แบบรวมแทน log ของ request แบบดิบ
- Do not label metrics with IP addresses, user agents, or full URLs.
- ให้ผู้ฟัง Prometheus และ OTLP อยู่ในลูปแบ็คหรือเครือข่ายภายใน
- ทำให้พฤติกรรมการติดตามปรากฏบนหน้าความเป็นส่วนตัวและคุกกี้