在 Cloud Trace 中,追蹤記錄和範圍會形成資料模型,用於追蹤要求在分散式應用程式中的路徑和延遲時間。追蹤記錄會擷取要求在服務中端對端執行的情形。追蹤記錄是由時距組成,可記錄該要求期間發生的個別作業、函式呼叫和 RPC。
追蹤資料模型
追蹤記錄包含下列項目:
追蹤 ID:端對端作業的專屬 ID。 追蹤記錄 ID 會在服務界線間的要求環境中傳播。
時距集合:一組共用相同追蹤記錄 ID 的時距。這些範圍會形成樹狀結構或有向非循環圖,代表要求的呼叫階層。
Cloud Trace 會使用追蹤記錄 ID,識別存放區中與同一項追蹤記錄相關聯的範圍。
時距資料模型
跨度代表特定時間範圍內發生的單一作業。每個時距都包含提供時距和作業狀態資訊的欄位:
ID 包含下列欄位:
- 追蹤記錄 ID:整體要求或追蹤記錄的專屬 ID,時距屬於該要求或追蹤記錄。
- 時距 ID:時距的專屬 ID。如果單一追蹤記錄中多次叫用作業,每次叫用都會產生名稱相同但 ID 不同的獨立時距。
- 父項時距 ID:識別叫用這個時距的父項作業。
「根」範圍的父項範圍 ID 設為
null。 - 名稱:執行的作業名稱。
- 種類:跨度種類會向追蹤工具 (例如追蹤記錄探索器) 提供跨度彼此之間關係的資訊。 詳情請參閱「OpenTelemetry SpanKind」。
執行資訊會顯示在下列欄位中:
- 狀態:記錄作業的完成狀態。這個欄位的值為
Unset(預設值)、Error或Ok。預設值不會指出錯誤。 - 開始時間:作業的開始時間。
- 結束時間:作業的結束時間。
- 狀態:記錄作業的完成狀態。這個欄位的值為
跨度可包含其他欄位,例如事件、屬性和連結:
- 事件會記錄時間戳記結構化訊息。
- 屬性會使用鍵值組儲存作業的其他資訊。撰寫屬性時,建議盡可能遵循 OpenTelemetry 語意慣例。
- 連結可讓您將一個跨度與另一個跨度建立關聯。
詳情請參閱「OpenTelemetry:範圍」。
資源
OpenTelemetry 資源: