Jaeger 安裝指南
什麼是 Jaeger?
Jaeger 是一套開源的分散式追蹤系統,常用於觀察微服務架構中請求在不同服務之間的流向、耗時與錯誤位置。透過 Jaeger,可以把分散在多個服務中的 trace 資料集中起來,協助開發者分析效能瓶頸與服務之間的呼叫關係。
本文會示範如何在 Ubuntu 環境中安裝 Jaeger Tracing,並透過 systemd 將 Jaeger 設定成系統服務。這裡使用 Jaeger 的 OpenTelemetry Native Backend 設定,讓服務可以接收 OTLP gRPC 與 HTTP 格式的 trace 資料,並透過 Jaeger Query UI 查詢追蹤結果。
Jaeger 的主要功能:
- 分散式追蹤:記錄請求在多個服務之間的完整流向
- 效能分析:查看每個 span 的耗時,協助找出延遲來源
- 錯誤排查:透過 trace 資料定位服務呼叫失敗或異常的位置
- 服務觀察:搭配 OpenTelemetry 收集 trace,建立基本的可觀測性基礎
為什麼使用 Jaeger?
相較於只依賴應用程式日誌,Jaeger 可以用更直觀的方式呈現跨服務請求的完整脈絡:
- 請求脈絡清楚:可以追蹤一次請求經過哪些服務與操作
- 問題定位更快:能從 trace 中看出延遲、錯誤與異常發生的位置
- 支援 OpenTelemetry:可以接收 OTLP gRPC 與 HTTP 格式的 trace 資料