本文列出 Error Reporting 支援的環境,並提供應用程式開發人員適用的語言專屬指南連結。建議您使用語言專用的用戶端程式庫,或依賴系統自動收集的記錄檔項目;不過,您也可以使用 Cloud Logging API 或 Error Reporting API 寫入錯誤資料。舉例來說,如果您使用 Cloud Run,寫入 stderr
的例外狀況會自動傳送至 Cloud Logging。
Error Reporting 是以 Cloud Logging 為基礎建構的全球服務,可在符合下列所有條件時分析記錄檔項目:
- Assured Workloads 已停用。詳情請參閱「Assured Workloads 總覽」。
- 儲存記錄項目的所有記錄 bucket 均已停用客戶自行管理的加密金鑰 (CMEK)。Error Reporting 無法將記錄項目儲存在已啟用 CMEK 的記錄值區中。如要瞭解如何判斷記錄儲存空間的 CMEK 設定,請參閱驗證金鑰啟用狀態。
- 記錄檔 bucket 符合下列其中一項條件:
- 記錄 bucket 會儲存在記錄項目來源的專案中。
- 記錄項目已轉送至專案,然後該專案將這些記錄項目儲存在其擁有的記錄 bucket 中。
虛擬私有雲支援
Error Reporting 是支援虛擬私有雲 (VPC) 的服務。
如要降低資料竊取風險,請使用 VPC Service Controls,為 Google 代管服務建立服務範圍。如要瞭解 VPC Service Controls 和如何建立服務參數,請參閱 VPC Service Controls 說明文件。
設定環境,自動回報錯誤資料
如要瞭解特定環境的設定需求,請參閱下列指南:
- App Engine 彈性環境
- App Engine 標準環境
- Apps Script
- Cloud Run functions
- Cloud Run
- Compute Engine
- Google Kubernetes Engine
- Amazon EC2
使用用戶端程式庫為應用程式進行插碼
如要瞭解如何設定應用程式以傳送錯誤報告,請參閱下列語言專屬設定指南:
使用 API 寫入錯誤資料
您可以執行 Error Reporting API 方法 report
或 Cloud Logging API 方法 write
,向 Google Cloud 專案回報錯誤事件。
如果您需要以 API 金鑰為基礎的驗證,則必須使用 Error Reporting API。如要使用 Error Reporting API 報告錯誤事件,請執行
report
方法,並將該方法的請求主體格式設為ReportedErrorEvent
物件。使用 Error Reporting API 時,系統會自動產生含有格式正確錯誤訊息的記錄項目,並寫入 Cloud Logging。這些記錄項目會寫入
logName
格式如下的記錄:projects/PROJECT_ID/clouderrorreporting.googleapis.com%2Freported_errors
由於記錄項目是由對
report
的呼叫所產生,因此您可能需要支付 Cloud Logging 擷取費用。如要控管要擷取的記錄項目,請參閱「排除篩選器」。如果您使用 Error Reporting API 回報錯誤事件,則本文其餘內容不適用。
如要使用 Cloud Logging API,您必須格式化
LogEntry
物件,使其包含堆疊追蹤記錄或ReportedErrorEvent
物件。如要進一步瞭解格式要求,請參閱記錄中的格式錯誤。