Google Cloud 中的可觀察性

Google Cloud Observability 包含觀測能力服務,可協助您瞭解應用程式 (包括代理應用程式) 的行為、健康狀態和效能。瞭解應用程式的行為和元件的連結方式,有助於您快速有效地預測、找出及因應非預期的變更。

本文件包含下列資訊:

觀測能力

觀測能力是收集及分析遙測資料的全面方法,可協助您瞭解應用程式 (包括代理應用程式) 及其運作環境的狀態。遙測資料包括記錄資料、指標資料和追蹤記錄資料。也可能包含應用程式生成的其他資料,例如提示和回覆。遙測資料可提供必要資訊,協助您瞭解應用程式的健康狀態和效能。

指標資料
指標資料是系統定期測量的健康狀態或效能相關數值資料,例如 CPU 使用率和要求延遲時間。指標資料出現非預期的變化,可能表示有問題需要調查。長期下來,您也可以分析模式,瞭解使用模式並預測資源需求。
記錄檔資料

記錄是指系統或應用程式活動隨時間產生的記錄。每份記錄都是一組含有時間戳記的記錄項目,每個記錄項目都會描述特定事件。

記錄資料通常包含豐富、詳細的資訊,可協助您瞭解應用程式特定部分發生的情況。不過,記錄資料無法有效顯示某個應用程式元件的變更與其他元件活動之間的關聯。追蹤記錄資料可以消弭這個落差。

追蹤記錄資料

「追蹤記錄」代表要求在分散式應用程式元件之間的路徑。也就是說,每項追蹤記錄都代表一項端對端作業。追蹤記錄是由「spans」(時距) 組成,也就是單一函式或作業的記錄,因此您可以追蹤要求流程並檢查延遲時間資料。這項資訊有助於找出問題的根本原因。

如果是代理應用程式,追蹤記錄會擷取代理執行的動作。例如,追蹤記錄可以擷取 MCP 呼叫。

其他資料

您可以分析記錄資料、指標資料、追蹤資料和其他相關資訊,取得更多深入分析。舉例來說,標籤可指出警告的嚴重程度,或記錄資料中的客戶 ID,提供有助於疑難排解和偵錯的背景資訊。

代理觀測

代理觀測是指瞭解軟體代理內部狀態和行為的方法,尤其是使用大型語言模型 (LLM) 建構的 AI 輔助代理。AI 代理的行為並不固定,而且相當複雜。因此,觀測能力對於瞭解、偵錯、評估及改善效能、安全性和可靠性至關重要。

Google Cloud 提供應用程式監控功能,支援應用程式觀測能力,可建立資訊主頁,顯示遙測資料、AI 資源指標資料,以及待處理警告等資訊。詳情請參閱本文的「 Google Cloud中的代理和應用程式觀測能力」一節。

應用程式觀測能力和 APM

應用程式效能監控 (APM):監控、診斷及管理軟體應用程式 (包括代理應用程式) 的效能、可用性和使用者體驗。APM 系統通常會提供顯示遙測資料的資訊主頁,以及監控遙測資料的服務。這些系統可協助您找出故障。

應用程式觀測能力會使用遙測資料生成洞察資料,協助您瞭解應用程式的行為。

Google Cloud 提供應用程式監控功能,支援應用程式觀測能力,可建立資訊主頁,顯示遙測資料、AI 資源指標資料,以及待處理警告等資訊。詳情請參閱本文的「 Google Cloud中的代理和應用程式觀測能力」一節。

觀測服務

觀測能力服務會收集、分析及關聯遙測資料,例如記錄資料、指標資料和追蹤資料。這些工具提供下列功能,可協助您維持應用程式可靠性:

  • 主動偵測問題,避免影響使用者。
  • 排解已知和新問題。
  • 在開發期間對應用程式進行偵錯。
  • 瞭解應用程式變更的影響。
  • 探索資料,發掘新洞察。

如要進一步瞭解可靠性做法,包括與觀測能力相關的原則和做法,請參閱《網站可靠性工程:Google 如何執行正式環境系統》一書。主題包括監控分散式系統、快訊和疑難排解。

Google Cloud Observability

Google Cloud Observability 服務可協助您收集、分析及關聯應用程式和基礎架構的遙測資料。這些服務也提供內建預設值,協助您快速上手。舉例來說,Application Monitoring 會為您在 App Hub 註冊的應用程式、服務和工作負載建立資訊主頁和拓撲圖。

自動收集遙測資料

建立 Google Cloud 專案時,系統會預設啟用監控、記錄和追蹤服務。這些服務提供核心功能,可收集、分析及視覺化呈現遙測資料:

  • 自動收集大多數 Google Cloud 服務的遙測資料。
  • 自動收集大多數 Google Cloud服務的稽核記錄。
  • 提供視覺化服務,包括資訊主頁和遙測探索工具,讓您查看及檢查遙測資料。舉例來說,Trace Explorer 可讓您查看追蹤記錄、Span 和中繼資料,包括多模態提示和回覆。詳情請參閱「查詢及查看遙測資料」。
  • 為記錄檔和追蹤記錄資料提供以 SQL 為基礎的分析服務。舉例來說,您可以使用 BigQuery,將記錄資料中的網址與已知惡意網址的公開資料集進行比較。
  • 提供應用程式監控和遙測監控功能。舉例來說,您可以建立警告政策,在記錄資料或指標資料符合指定條件時通知您。您也可以使用綜合監控測試應用程式效能。
  • 從檢測應用程式收集遙測資料。檢測是指在應用程式中加入程式碼,以發出遙測資料。

    如要檢測應用程式,建議您使用開放原始碼、不限供應商的檢測架構,例如 OpenTelemetry,而非供應商和產品專屬的 API 或用戶端程式庫。如要瞭解這些架構,請參閱「 應用程式開發人員觀測能力」和「選擇檢測方法」。

代理和應用程式觀測能力

Google Cloud 中的應用程式監控功能提供代理觀測和應用程式觀測功能。這項服務提供資訊主頁和拓撲圖,可讓您瞭解 App Hub 應用程式、服務和工作負載的健康狀態和效能。此外,也會生成及顯示 AI 資源的錯誤率和權杖用量等指標。為產生這些指標,Application Monitoring 會根據 OpenTelemetry GenAI 語意慣例,使用應用程式專屬標籤和事件,篩選及匯總追蹤記錄資料。

如要觀測代理,建議使用 Agent Development Kit (ADK) 架構建構代理。由於 ADK 仰賴 OpenTelemetry,因此 ADK 產生的遙測資料符合 OpenTelemetry GenAI 語意慣例。

如要對失敗進行偵錯、監控費用或分析代理行為 (包括 Gemini Enterprise Agent Platform、Agent Gateway 和 Model Armor 代理),您需要記錄、指標和追蹤資料:

  • 記錄檔會提供事件和錯誤的相關資訊。
  • 「指標」可讓您監控延遲時間和權杖用量。
  • 追蹤記錄會提供執行路徑的相關資訊,並經過分析,以衍生模型呼叫次數或總權杖用量等指標。這些衍生指標可讓您瞭解代理的效能和行為。詳情請參閱「查看 AI 資源」。
  • 提示和回覆資料可讓您使用 Gen AI Evaluation Service,評估代理品質和決策。

應用程式的「Application Monitoring」(應用程式監控) 資訊主頁會顯示應用程式的服務和工作負載清單,例如 Gemini Enterprise 應用程式、Gemini Enterprise Agent Platform 代理和 MCP 伺服器:

列出應用程式中服務和工作負載的總覽。

您可以依據基礎架構類型或 App Hub 功能類型,識別代理服務和工作負載。「功能類型」欄預設為隱藏。

如需程式碼範例,請參閱下列內容:

協助找出錯誤

Error Reporting 會分析 Cloud Logging 的記錄項目,找出錯誤。Error Reporting 發現錯誤時,會為相關聯的記錄項目加上註解,並建立錯誤群組。探索這些錯誤群組,找出錯誤的原因和歷史記錄。

分析支援

Cloud Profiler 可讓您分析應用程式的 CPU 和記憶體用量,找出提升效能的機會。

開始使用

本節說明如何熟悉 Google Cloud中的觀測功能。

試試快速入門導覽課程

請嘗試快速入門導覽課程,熟悉可用的服務。

查看自動收集的資料

大多數 Google Cloud 服務都會自動產生記錄資料和指標資料。也就是說,您無須額外設定,就能開始查看支援 Google Cloud 服務的部分觀測資料。

  • Google Kubernetes Engine (GKE)、Compute Engine 和 Cloud SQL 等部分 Google Cloud 服務,會在 Google Cloud 控制台中提供預設資訊主頁,方便您查看服務情境中的可觀測的資料。
  • Compute Engine、GKE 和 Cloud Run 預設會產生系統指標資料和記錄資料。設定收集其他資料。
  • Cloud Run functions 和 App Engine 會自動產生指標資料、記錄資料和追蹤記錄資料。

您也可以在 Metrics Explorer 中繪製收集到的指標資料圖表、在 Logs Explorer 中查看記錄資料,或在 Trace 中查看追蹤記錄資料。如要一併查看相關資料,請建立自訂資訊主頁。舉例來說,您可以建立資訊主頁,其中包含虛擬機器的記錄資料、成效指標資料和警告政策。

設定 Compute Engine VM 以收集其他資料

根據預設,Compute Engine VM 只會收集基本系統指標資料和記錄資料。不過,您可以安裝 Ops Agent,從 Compute Engine 執行個體和應用程式收集其他遙測資料,用於疑難排解、效能監控和警告。Ops Agent 不是代理應用程式。而是收集遙測資料的確定性軟體。

設定 GKE 叢集,收集其他資料

根據預設,GKE 叢集會將系統記錄資料和系統指標資料傳送至 Logging 和 Monitoring。Google Cloud Managed Service for Prometheus 會收集第三方指標資料和使用者定義的指標資料。

  • 使用觀測能力指標資料套件,瞭解應用程式和叢集資源的狀態。舉例來說,控制層指標資料可用於建立服務等級目標 (SLO),監控服務可用性和延遲時間。
  • 監控第三方應用程式,例如 Postgres、MongoDB 和 Redis。這些整合項目提供預先設定的資訊主頁和警告政策。

設定 Cloud Run 收集自訂資料

如果 Cloud Run 服務會寫入 Prometheus 指標資料,您可以使用 Prometheus sidecar 將指標資料傳送至 Cloud Monitoring。

如果 Cloud Run 服務改為寫入 OTLP 指標資料,則可使用 OpenTelemetry sidecar。如需範例,請參閱使用 Sidecar 收集 OTLP 指標資料的教學課程。