您可以透過下列兩種方式的其中之一,從 Google Kubernetes Engine 應用程式傳送錯誤至 Error Reporting:
記錄到 Cloud Logging。如果您現已使用 Cloud Logging,唯一額外需要滿足的條件是,錯誤回報功能必須能辨識您的記錄檔項目。如需進一步瞭解錯誤格式要求,請參閱「在 Cloud Logging 中格式化錯誤」。
使用 Error Reporting API。您的應用程式可使用 REST API 來傳送 HTTP 要求,或充分利用多種語言的實驗程式庫。
使用 Logging 回報錯誤
GKE 的預設記錄代理程式提供代管解決方案,可部署及管理代理程式,將叢集的記錄傳送至 Cloud Logging。代理程式的結構取決於叢集版本。如要瞭解這個代理程式,請參閱「管理 GKE 記錄」。
Error Reporting 規定例外狀況或堆疊追蹤必須包含在單一記錄項目中。大多數記錄代理程式都能辨識出多個記錄行 (每個堆疊框架都印在新行上) 代表堆疊追蹤,並將其做為單一記錄項目傳送至 Cloud Logging。如果代理程式無法將多行重建為單一錯誤,請使用 projects.events.report
API 端點,以便控管錯誤內容。
使用 Error Reporting API 寫入錯誤
Error Reporting API 提供 report
端點,可將錯誤資訊寫入服務。
Enable the Error Reporting API.
使用 REST API 或用戶端程式庫將錯誤回報至 API。
範例
ASP.NET
ASP.NET NuGet 套件會將 ASP.NET 網頁應用程式中未捕捉到的例外狀況回報給 Error Reporting。
安裝 NuGet 套件
如要在 Visual Studio 中安裝 Stackdriver ASP.NET NuGet 套件:
- 以滑鼠右鍵按一下您的解決方案,然後選取 [管理解決方案的 NuGet 套件]。
- 選取 [Include prerelease] (包括搶鮮版) 核取方塊。
- 搜尋並安裝名為
Google.Cloud.Diagnostics.AspNet
的套件。
用量
Stackdriver ASP.NET NuGet 套件安裝完成後,請新增下列陳述式至應用程式程式庫,以便開始傳送錯誤至 Stackdriver:
using Google.Cloud.Diagnostics.AspNet;
在 .NET 網頁應用程式的 Register
方法中加入下列 HttpConfiguration
程式碼 (請使用實際的專案 ID 取代 your-project-id
),以啟用例外狀況的回報功能:
將這個方法新增至 ASP.NET 應用程式後,您就可以在 Google Cloud 控制台的「Error Reporting」部分中,查看系統回報的任何未處理例外狀況。 Google Cloud
C#
您可以在 GoogleCloudPlatform/dotnet-docs-samples 存放區中找到下列範例。如要使用,請在建構專案後指定專案 ID:
C:\...\bin\Debug> set GOOGLE_PROJECT_ID=[YOUR_PROJECT_ID]
請務必將 [YOUR_PROJECT_ID]
替換為Google Cloud 控制台中的正確值。
然後,使用與下列相似的程式碼傳送例外狀況資料:
Go
Java
Node.js
Ruby
Python
PHP
查看錯誤群組
前往 Google Cloud 控制台的「Error Reporting」頁面:
您也可以透過搜尋列找到這個頁面。