本頁面提供使用 OpenTelemetry 收集追蹤記錄的總覽資訊。如要監控及偵錯 Spanner 要求,您可以在 Spanner 用戶端程式庫中啟用追蹤記錄。用戶端和端對端追蹤功能可協助您監控效能及偵錯問題。
追蹤記錄會提供用戶端每個要求的相關資訊,例如:
時間戳記範圍,包括用戶端傳送 RPC 要求的時間,以及用戶端收到 RPC 回應的時間,包括網路和用戶端系統造成的延遲。
提供用戶端及其設定相關資訊的屬性 (鍵/值組合)。
時間範圍內重要事件的註解。
如要進一步瞭解範圍和屬性,請參閱 OpenTelemetry 說明文件中的「範圍」和「屬性」。
端對端追蹤
除了用戶端追蹤,您也可以選擇啟用端對端追蹤。 端對端追蹤記錄有助於瞭解及偵錯 Spanner 特有的延遲問題,例如:
判斷延遲是應用程式和 Spanner 之間的網路延遲所致,還是發生在 Spanner 內部。
找出應用程式要求傳送的 Google Cloud 區域,以及是否有跨區域要求。跨區域要求通常表示應用程式與 Spanner 之間的延遲時間較長。
為避免 Cloud Trace 負載過重,並有效管理費用,端對端追蹤功能會限制可匯出的追蹤範圍數量。這項限制不會影響使用端對端追蹤功能進行疑難排解。
OpenTelemetry
Spanner 用戶端程式庫支援使用 OpenTelemetry API 收集追蹤記錄。OpenTelemetry 是開放原始碼的可觀測性架構。 OpenTelemetry 提供各種設定,例如特定後端的匯出工具、取樣率和範圍限制。
使用匯出工具和收集器匯出追蹤記錄
在設定期間,您可以將追蹤記錄匯出至可觀測性後端。大多數可觀測性服務供應商都會提供匯出工具供您使用,例如 Trace 匯出工具。
除了匯出工具,OpenTelemetry 也建議設定收集器。收集器可讓服務快速卸載資料,並由收集器處理重試、批次處理和加密等額外作業。收集器會與應用程式並行執行。收集器會接收 OLTP 訊息、處理訊息,然後將訊息匯出至可觀測性後端。
限制
Spanner 追蹤記錄有下列限制:
- 追蹤範圍僅適用於 Java、Go、Node 和 Python 用戶端程式庫。
- 端對端追蹤記錄只能匯出至 Cloud Trace。
定價
除了 Spanner 使用量,追蹤作業也可能會透過可觀測性後端產生費用。
將追蹤記錄時距擷取至可觀測性後端會產生費用。 舉例來說,如果您使用 Cloud Trace 做為後端,系統會根據 Cloud Trace 定價向您收費。
如要進一步瞭解帳單,請根據流量設定較小的追蹤記錄取樣比例。
後續步驟
如要設定用戶端和端對端追蹤,請參閱「使用 OpenTelemetry 設定追蹤記錄收集作業」。