Cloud Trace 總覽

Cloud Trace 是一套分散式追蹤系統,可追蹤要求延遲情形,並協助您排解服務和生成式 AI 應用程式的效能瓶頸。 Google CloudTrace 會從服務和已檢測的應用程式收集延遲資料,協助您瞭解微服務架構中要求的處理方式,並找出相關記錄。Google Cloud

透過 Trace,您可以測量端對端要求延遲時間、比較一段時間內的效能趨勢,並找出造成延遲的下游依附元件。如需如何關聯追蹤記錄和記錄檔的逐步說明,請參閱「一併使用追蹤記錄和記錄檔進行根本原因分析」。

環境支援

Trace 可在下列環境的 Linux 上執行:

元件

Trace 包含追蹤用戶端,可收集追蹤記錄並傳送至 Google Cloud 專案。接著,您可以使用Google Cloud 控制台查看及分析追蹤用戶端收集的資料。如要瞭解資料模型,請參閱「追蹤記錄和跨度」。

追蹤用戶端

追蹤用戶端會從應用程式收集延遲和時距資料,並匯出至 Google Cloud 專案。視環境和需求而定,您可以自動或手動收集追蹤記錄資料,方法是檢測應用程式程式碼。

追蹤介面

如要查看及分析時距資料,請使用Google Cloud 控制台中的「Trace Explorer」(追蹤記錄探索工具) 和「Observability Analytics」(Observability Analytics) 頁面:

  • 追蹤記錄檢視工具:顯示追蹤記錄資料的匯總資訊,並可讓您詳細檢查個別追蹤記錄。熱視圖會顯示匯總延遲資料,您可以使用指標探索這些資料。如要限制顯示的資料,可以新增篩選器。 您也可以查看及探索個別範圍和追蹤記錄:

  • 可觀測性分析:提供 SQL 查詢介面。查詢可以加入追蹤和記錄資料,且您可以將查詢結果顯示為表格或圖表。建立連結的 BigQuery 資料集後,您可以使用 BigQuery 分析追蹤資料。詳情請參閱「查詢及分析追蹤記錄」。

自動追蹤設定

下列設定會自動擷取追蹤記錄資料:

  • App Engine 標準環境

    • 第一代執行階段會自動攔截追蹤範圍,並傳送至 Cloud Trace。詳情請參閱「舊版套裝服務總覽」。

    • 第二代執行階段會自動擷取整體要求延遲時間,並在要求中加入 X-Cloud-Trace-Context HTTP 標頭。詳情請參閱「執行階段支援時間表」。

  • Cloud Run functions 和 Cloud Run

    系統會自動將傳入和傳出 HTTP 要求的延遲時間資料傳送至 Trace。

檢測應用程式

為應用程式加入檢測功能,收集特定資訊,瞭解應用程式的效能並排解失敗問題。多個開放原始碼檢測架構會收集記錄、指標和追蹤記錄資料,並將這些資料傳送給任何供應商,包括 Google Cloud。對於代理程式應用程式,部分架構可能會收集提示和回覆,或傳遞可追蹤部分遠端 Google Cloud MCP 伺服器呼叫的內容。

如要監控應用程式,建議您使用開放原始碼的廠商中立監控架構 (例如 OpenTelemetry),而非廠商和產品專屬的 API 或用戶端程式庫。如要瞭解這些架構,請參閱「 檢測和觀測能力」和「選擇檢測方法」這兩篇文章。

我們提供的檢測範例使用 OpenTelemetry:

雖然您可以使用 Cloud Trace 用戶端程式庫檢測應用程式,但我們建議使用 OpenTelemetry。建議使用 OpenTelemetry 程式庫,而非 Trace 用戶端程式庫,因為前者較簡單,且會以 OpenTelemetry 定義的 OTLP 格式匯出追蹤記錄資料。詳情請參閱「檢測 Trace」和「Cloud Trace 用戶端程式庫」。

Cloud Trace 和代理式應用程式

如要瞭解代理程式應用程式的行為,請設定應用程式,在呼叫遠端 Google Cloud MCP 伺服器時,收集提示和回應或產生範圍。提示和回覆可協助您瞭解代理應用程式使用的推論方式。記錄工具呼叫的範圍可協助您確認工具叫用、呼叫狀態和要求延遲。

多個檢測範例會說明如何設定應用程式,以收集提示和回覆。這些範例依賴 OpenTelemetry。詳情請參閱「如何檢測生成式 AI 應用程式」。

Google Cloud MCP 伺服器可以產生追蹤範圍。詳情請參閱「使用 Trace 檢查 MCP 呼叫」。

擷取追蹤記錄資料的 API

您可以透過 Telemetry API 或 Cloud Trace API,將追蹤記錄資料傳送至專案。我們建議使用 Telemetry API,原因如下:

  • 這個 API 可與開放原始碼 OpenTelemetry 生態系統相容,而且限制通常比 Cloud Trace API (專屬 Google Cloud API) 的限制寬鬆。

  • 追蹤資料的儲存格式通常與 OTLP 定義的 proto 檔案一致。部分欄位可能會先從 OpenTelemetry 專屬資料類型轉換為 JSON 資料類型,再進行儲存。如要瞭解儲存格式,請參閱「追蹤記錄資料的結構定義」。

  • 如要以收集器為基礎匯出追蹤資料,您的檢測儀器不需要依賴 Google Cloud專屬的匯出工具。

  • 部分功能 (例如應用程式監控) 只能在您將追蹤資料傳送至 Telemetry API 時,取得相關資訊。

如要防止專案儲存追蹤資料,請停用 Cloud Trace API。 Google Cloud 停用 Cloud Trace API 會產生下列影響:

  • Google Cloud 服務不會將追蹤記錄資料傳送至專案。
  • Google Cloud 回覆傳送至 Cloud Trace API 端點的要求時,會傳回錯誤代碼。
  • Google Cloud Observability 會捨棄傳送至追蹤記錄專用 Telemetry API 端點的追蹤記錄資料。請勿停用 Telemetry API,因為該 API 可以接收記錄、指標和追蹤記錄資料。

如果您管理機構,並想禁止使用 Cloud Trace,請建立機構政策限制。

VPC Service Controls 支援

Google Cloud 服務和應用程式可以使用 Cloud Trace API 或 Telemetry API,將追蹤記錄資料傳送至專案。Cloud Trace 提供的視覺化服務會使用 Cloud Trace API,擷取要顯示的追蹤資料:

  • Cloud Trace 是支援 VPC Service Controls 的服務。Trace 服務名稱為 cloudtrace.googleapis.com。如需詳細資料和限制,請參閱「支援的產品:Cloud Trace」。

  • Telemetry API 是 VPC Service Controls 支援的服務。服務名稱為「telemetry.googleapis.com」。如需詳細資料和限制,請參閱「支援的產品:遙測 API」。

如要設定預設值,指定追蹤資料的儲存 Google Cloud 區域,以及是否使用客戶管理的金鑰加密資料,請使用 Observability API。您也可以使用這個 API 設定連結的 BigQuery 資料集,透過 BigQuery 服務查詢追蹤資料,以及設定追蹤範圍,彙整儲存在多個專案中的追蹤資料。

  • Observability API 是 VPC Service Controls 支援的服務。服務名稱為「observability.googleapis.com」。如需詳細資料和限制,請參閱「支援的產品:Observability API」。

如要瞭解詳情,請參考下列資源:

Cloud Trace 和資料落地

如果您因為有資料駐留或影響等級 4 (IL4) 的需求而使用 Assured Workloads,請勿使用 Cloud Trace API 傳送追蹤範圍。

如要防止專案儲存追蹤資料,請停用 Cloud Trace API。 Google Cloud 請勿停用 Telemetry API,因為該 API 可以接收記錄、指標和追蹤記錄資料。

追蹤記錄保留

類別 保留期限
儲存在 _Trace bucket 中的範圍 30 天

IAM 角色

Cloud Trace 會使用 Identity and Access Management (IAM) 控管資源存取權。如需 Cloud Trace API 和 Telemetry API 角色清單,請參閱「使用 IAM 控管存取權」。

由於 Telemetry API 是消費者 API,因此如要將資料傳送至 Telemetry API,您必須指定配額專案,並授予應用程式的服務帳戶使用該配額的權限。詳情請參閱「Telemetry API:驗證」。

定價

如要瞭解 Cloud Trace 的定價,請參閱「Google Cloud Observability 定價」頁面。

後續步驟