將記錄項目連結至追蹤記錄

本文說明如何將記錄項目連結至追蹤記錄。您可以在記錄項目中設定欄位,執行連結作業。使用 LogEntry 結構中的追蹤欄位 (spanIdtracetraceSampled),即可將記錄和追蹤記錄相互關聯,進而更有效率地排解分散式問題。

手動將記錄項目與追蹤記錄或時距建立關聯

如果您使用 Cloud Logging API 寫入記錄資料,或是寫入結構化記錄資料,則可將記錄項目與追蹤或範圍建立關聯。記錄項目也可以記錄追蹤記錄是否經過取樣。如要瞭解 Ops Agent 如何將結構化記錄資料轉換為 LogEntry 中的欄位,請參閱結構化酬載中的特殊欄位

如要將記錄項目與追蹤記錄建立關聯,請在 LogEntry 物件中設定 trace 欄位:

  • 偏好格式:TRACE_ID
  • 舊版格式:projects/PROJECT_ID/traces/TRACE_ID

在上述運算式中,PROJECT_ID 是您的 Google Cloud 專案 ID,TRACE_ID 則是追蹤 ID

使用 Cloud Logging API 時,如要將記錄檔項目與 span 建立關聯,請將 LogEntry 物件中的 spanId 欄位設為 span ID 的 16 個字元十六進位編碼。舉例來說,如要將記錄項目與 ID 為 74 的時距建立關聯,請將時距 ID 設為 000000000000004a

如要指出您正在使用追蹤記錄取樣,且在寫入記錄項目時,追蹤記錄已取樣並儲存,請在 LogEntry 物件中設定 traceSampled 欄位。使用追蹤記錄取樣時,系統可能會在未擷取追蹤記錄本身的情況下建立記錄項目。

自動將記錄項目與追蹤記錄或時距建立關聯

使用 Cloud Logging 用戶端程式庫時,記錄項目中的追蹤欄位有時會自動設定。手動設定的值優先於自動設定的值。

舉例來說,如果您使用 OpenTelemetry,並從有效的 OpenTelemetry span 記錄,則記錄項目的追蹤欄位會從 OpenTelemetry Context 填入。

或者,在某些情況下,如果存在 HTTP 要求,則可以從 HTTP 要求中的 W3C traceparent 欄位或 X-Cloud-Trace-Context 值設定追蹤欄位。

如要進一步瞭解如何自動填入記錄項目中的追蹤欄位,請參閱下列各個程式語言的專屬用戶端程式庫說明文件:

查看記錄

您可以查看追蹤的記錄項目,以及瀑布圖或記錄探索工具。使用記錄檔探索工具時,系統會自動將時間戳記範圍限制為追蹤記錄的範圍。如果沒有可顯示的記錄項目,記錄檔探索工具會顯示 No entries found matching current filter 訊息。

如要從「追蹤記錄詳細資料」窗格查看追蹤記錄的記錄項目,請執行下列其中一項操作:

  • 如要一併顯示追蹤記錄項目和瀑布圖,請前往瀑布圖並點選「顯示記錄」。 如果沒有顯示「顯示記錄」,表示沒有可用的記錄項目。

  • 如要在記錄探索工具中查看記錄項目,請在「詳細資料」部分中,按一下「記錄」標籤旁的「查看」。 請注意,如果擁有 Cloud Load Balancing 追蹤記錄,請按一下「VM Log」(VM 記錄) 標籤旁的「View」(查看)

如要進一步瞭解如何在 Cloud Logging 中查看記錄項目,請參閱「使用 Logs Explorer」。

記錄檢視權限

如要查看任何記錄項目,您必須在專案中具備 logging.logEntries.list 權限。這項權限由「記錄檢視者」和「專案檢視者」身分與存取權管理 (IAM) 角色提供。

如要查看 VM 執行個體記錄,您必須具備專案的 compute.instances.get 權限。這項權限由 Compute Engine 網路檢視者專案檢視者 IAM 角色提供。