微服務可觀察性工具可讓您檢測應用程式,以便從部署在 Google Cloud和其他位置的 gRPC 工作負載,在 Cloud Monitoring、Cloud Logging 和 Cloud Trace 中收集及呈現遙測資料。
本文件適用對象為 gRPC 服務擁有者、網站可靠度工程師,以及使用遙測資料來排解問題和最佳化 gRPC 工作負載的任何人。
可觀察性會將 OpenCensus 外掛程式 (用於記錄指標、追蹤和 gRPC) 包裝成單一統一外掛程式,且不會公開任何依附元件。微服務可觀察性會使用與 Cloud Monitoring、Cloud Logging 和 Cloud Trace 整合的可觀察性資料。說明文件提供如何將可觀察性外掛程式整合至 gRPC 應用程式的操作說明。
為了協助您收集資訊及偵錯應用程式,微服務可觀察性包含下列功能:
- 產生傳輸層級 RPC 事件記錄。
- 支援分散式追蹤記錄。
- Cloud Monitoring 支援服務,包括預先定義的資訊主頁。
- Cloud Logging 建議的查詢。
- 資源標籤和自訂標籤。
功能
本節將說明微服務的可觀察性功能。
遙測整合
每種 gRPC 語言 (C++、Go 和 Java) 的觀測插件套件預設會與 Google Cloud Observability 整合。只要進行最少的設定,外掛程式就會擷取專案和部署作業的中繼資料,並設定追蹤、指標和記錄資料產生的預設數量。
檢查 RPC 傳輸層級事件
遠端程序呼叫 (RPC) 的生命週期可能包含中繼資料事件 (包括標頭和尾標)、訊息事件,以及狀態事件 (包括正常狀態和錯誤狀態) 和結束事件。使用微服務可觀察性時,您可以檢查每種類型的事件詳細資料。您可以檢查序列化的訊息長度、權限、用戶端/伺服器位址,以及用戶端或伺服器是否取消 RPC。
透過明確的設定,微服務可觀察功能可為訊息或標頭啟用酬載記錄。您可以分別為酬載記錄、控制訊息或標頭酬載記錄設定大小限制。您也可以指定包含或不含萬用字元的目標方法群組。
RPC 的分散式追蹤支援
伺服器架構可讓 RPC 分散為多個呼叫,或分開透過元件傳送的要求。微服務可觀察性會使用分散式追蹤功能,讓您更輕鬆地分析和排除複雜系統的問題。微服務觀測產品提供������支援���能,可��� gRPC 應用程式啟動追蹤、產生跨度並傳播追蹤內容。
擷取指標監控的測量值
外掛程式提供第一方支援,可針對訊息數量、訊息大小和延遲時間等,在訊息層級、RPC 層級或方法層級提供多種評估指標。這些測量值會上傳至 Cloud Monitoring。您可以使用 Cloud Monitoring 的 Metrics Explorer 探索已收集的指標,該工具提供包含一組預先存在圖表的資訊主頁。您也可以在自訂資訊主頁中呈現指標。
追蹤記錄與記錄關聯
追蹤記錄可協助您找出系統中的錯誤和問題,而記錄項目則可協助您找出任何錯誤和問題的詳細資料。追蹤記錄和記錄可提供錯誤或問題的詳細資訊,讓您更深入瞭解跨不同系統的 RPC。微服務可觀察性會自動將記錄與追蹤連結,這些追蹤會根據上游取樣決策或使用者定義的取樣率進行取樣。
資源標籤和自訂標籤
為了讓您更有效地探索可觀察性資料,微服務可觀察性預設會提供資源標籤,並允許應用程式定義自訂標籤。資源標籤是部署專屬的鍵/值組合,用於註解工作負載的位置,例如 Compute Engine 節點名稱或 Google Kubernetes Engine 命名空間。
自訂標籤提供附加自訂資訊的機制,如下所示:
- 用於追蹤資料的區塊標籤。
- 做為指標資料的標籤。
- 做為記錄資料的記錄項目標籤。
如要納入來源版本或標準服務名稱,自訂標籤就很實用。您可以使用這些標籤新增特定使用者資訊,以便在記錄、指標和追蹤記錄中識別特定的可觀察性資料。
建議查詢
微服務可觀察性會在 Cloud Logging 中自動提供數個建議查詢。如需完整資訊,請參閱建議查詢。
架構
下圖說明微服務可觀察性如何收集及提供可觀察性資料:
首先,您必須為 gRPC 工作負載指定可觀察性設定。可觀察性設定包含您在環境變數中設定的欄位。設定會定義下列項目:
- 匯出至 Cloud Trace 的追蹤記錄時距。
- 匯出至 Cloud Monitoring 的指標資料。
- 匯出至 Cloud Logging 的 RPC 事件。
接著,您可以在 Cloud Monitoring 的自訂資訊主頁中查看這項資訊,並在 Cloud Logging 中取得建議查詢。您也可以將 Cloud Trace、Cloud Monitoring 和 Cloud Logging 中的資訊匯出至所選的第三方平台。
定價
微服務觀測功能的定價與 Google Cloud Observability 相同。使用微服務可觀察性外掛程式搭配 Cloud Trace、Cloud Logging 和 Cloud Monitoring 時,無須另外付費。詳情請參閱 Google Cloud Observability 的定價。
後續步驟
如要瞭解如何設定微服務的可觀察性,請參閱「設定微服務的可觀察性」。
如要進一步瞭解設定資料、追蹤定義、指標定義和記錄定義,請參閱微服務可觀察性參考資料。