使用 OpenTelemetry 追蹤和額外指標
在開發和效能執行期間,使用 OpenTelemetry 收集追蹤和額外指標。
關於 OpenTelemetry
OpenTelemetry 提供高品質、普遍且可移植的遙測數據,以實現有效的可觀察性。
此專案使用它來收集 Keycloak 的追蹤資料
-
追蹤資料可以深入了解 Keycloak,並將請求分解為內部和資料庫呼叫的樹狀結構。
這使用 Keycloak 26 及更新版本中內建的 OpenTelemetry 功能。
請瀏覽 OpenTelemetry 網站以取得有關該工具的更多資訊,以及以下關於如何存取和使用此資訊的章節。
設定 OpenTelemetry
OpenTelemetry 預設為停用。需要透過自訂設定 KC_OTEL
來啟用。
根據設定 KC_OTEL_SAMPLING_PERCENTAGE
,可能只會記錄一部分的追蹤資料,以考量效能因素。
與其他設定不同,這裡沒有使用 OpenTelemetry 收集器,而是直接將追蹤資料傳送至 Jaeger。 |
存取 OpenTelemetry 追蹤資料
可以使用 Grafana 和 Jaeger 來存取追蹤資料,兩者預設都會部署。
假設命令 minikube ip
傳回 192.168.39.39
,則 Grafana 可在 http://grafana.192.168.39.39.nip.io 上存取,而 Jaeger 可在 http://jaeger.192.168.39.39.nip.io 上存取。
使用瀏覽器透過 Jaeger 資料來源在 Grafana 中搜尋追蹤資料,或直接使用 Jaeger UI。
在 Grafana 中搜尋追蹤資料時,請至少選擇服務 keycloak
來查看追蹤資料。可以使用追蹤的操作和標籤進一步限制結果。

Jaeger UI 類似。如同 Grafana UI,請在搜尋之前選擇 Keycloak 服務。
若要深入了解該工具,請瀏覽 Jaeger 首頁。
在 Jaeger UI 中執行搜尋後,搜尋時間戳記會固定並編碼在 URL 中。因此,重新執行搜尋或設定不同的篩選選項將無法找到第一次搜尋後建立的追蹤資料。若要使用最新的時間戳記開始搜尋,請按一下選單工具列中的 搜尋。 |
