本文將說明如何將記錄項目與追蹤記錄連結。您可以透過在記錄項目中設定欄位來執行連結。您可以使用 LogEntry
結構中的追蹤欄位 (spanId
、trace
和 traceSampled
),將記錄和追蹤記錄連結起來,以便更有效地排解分散式問題。
手動將記錄項目與追蹤記錄或時距建立關聯
如果您使用 Cloud Logging API 寫入記錄資料,或是寫入結構化記錄資料,則可以將記錄項目與追蹤或區間建立關聯。記錄項目也可以記錄是否對追蹤記錄進行取樣。如要瞭解 Ops Agent 如何將結構化記錄資料轉換為 LogEntry
中的欄位,請參閱「結構化酬載中的特殊欄位」。
如要將記錄項目與追蹤記錄建立關聯,請在 LogEntry
物件中設定 trace
欄位。trace
欄位必須設為採用以下格式的字串:
projects/PROJECT_ID/traces/TRACE_ID
其中 PROJECT_ID
是您的 Google Cloud 專案 ID,TRACE_ID
則是追蹤識別碼
如要在使用 Cloud Logging API 時將記錄項目與區間建立關聯,請將 LogEntry
物件中的 spanId
欄位設為區間 ID 的 16 個十六進位編碼字元。舉例來說,如要將記錄項目與 ID 為 74
的時距建立關聯,請將時距 ID 設為 000000000000004a
。
如要指出您使用的是追蹤記錄取樣功能,且在寫入記錄項目時,系統已對追蹤記錄進行取樣以便儲存,請在 LogEntry
物件中設定 traceSampled
欄位。使用追蹤記錄取樣時,即使未擷取追蹤記錄,系統仍可能會建立記錄項目。
自動將記錄項目與追蹤記錄或時距相關聯
使用 Cloud Logging 用戶端程式庫時,在某些情況下,記錄項目中的追蹤欄位可以自動設定。手動設定的值優先於自動設定的值。
舉例來說,如果您使用 OpenTelemetry,並從有效的 OpenTelemetry 跨距記錄資料,則記錄項目中的追蹤欄位會從 OpenTelemetry 內容填入資料。
或者,在某些情況下,當 HTTP 要求出現時,您可以透過 HTTP 要求中的 W3C traceparent
欄位或 X-Cloud-Trace-Context
值設定追蹤記錄欄位。
如要進一步瞭解如何在記錄項目中自動填入追蹤欄位,請參閱以下語言專屬的用戶端程式庫說明文件:
查看記錄
您可以查看追蹤記錄的記錄項目,以及瀑布圖表或記錄檔探索工具。使用記錄檔探索工具時,系統會自動將記錄檔限制在追蹤記錄的時間戳記範圍內。如果沒有可顯示的記錄項目,記錄檔探索工具會顯示訊息 No entries found matching current filter
。
如要查看追蹤記錄的記錄項目,請在「Trace details」窗格中執行下列任一操作:
如要在瀑布圖旁顯示追蹤記錄項目,請前往瀑布圖,然後按一下「Show logs」。如果沒有顯示「Show logs」,表示沒有可用的記錄項目。
如要在記錄檔探索工具中查看記錄項目,請在「Details」部分,按一下「Log」標籤旁的「View」。請注意,如果您有 Cloud Load Balancing 追蹤記錄,請按一下「VM Log」標籤旁的「View」。
如要進一步瞭解如何在 Cloud Logging 中查看記錄項目,請參閱「使用記錄檔探索工具」。
記錄檢視權限
如要查看任何記錄項目,您必須在專案中具備 logging.logEntries.list
權限。這項權限由 記錄檢視器和 專案檢視器身分與存取權管理 (IAM) 角色提供。
如要查看 VM 執行個體記錄,您必須在專案中具備 compute.instances.get
權限。這項權限由 Compute Engine 網路檢視者和 專案檢視者 IAM 角色提供。