您可以采用以下两种方法之一,将 Compute Engine 应用中的错误发送到 Error Reporting:
登录到 Cloud Logging。如果您已经在使用 Cloud Logging,那么唯一的要求就是保证您的日志条目可被 Error Reporting 所识别。如需详细了解错误格式设置要求,请参阅设置 Cloud Logging 中的错误格式。
使用 Error Reporting API。您的应用可以使用 REST API 发送 HTTP 请求,也可使用多种语言的实验库。
使用 Logging 报告错误
如需将 Compute Engine 应用连接到 Error Reporting,请将异常或其他错误发送到 Logging。
例如:
- 安装适用于您的环境的
google-fluentd
代理。如需查看相关说明,请参阅安装 Logging 代理。 修改您的应用,使其将异常及其堆栈轨迹记录到 Logging 中。
您必须在同一日志条目中添加单个错误或异常的所有信息,包括任何堆栈轨迹的所有帧。如果没能将所有信息收集在一起,Error Reporting 就可能会漏掉一些信息。您可以为日志条目载荷使用结构化 JSON 格式,以便为每个错误包含不同类型的信息。
Enable the Error Reporting API.
使用 REST API 或客户端库向 API 报告错误。
- 右键点击您的解决方案,然后选择管理解决方案的 NuGet 程序包。
- 选中包括预发行版复选框。
- 搜索并安装名为
Google.Cloud.Diagnostics.AspNet
的软件包。
Java
请将以下内容添加到 pom.xml
文件:
然后,使用如下代码发送异常数据:
Python
首先,安装 fluent-logger-python
库:
sudo pip install fluent-logger
然后,使用如下代码发送异常数据:
Node.js
首先,安装 fluent-logger-node
库:
npm install --save fluent-logger
然后,使用如下代码发送异常数据:
Go
首先,安装 fluent-logger-golang
软件包:
go get github.com/fluent/fluent-logger-golang/
然后,使用如下代码发送错误数据:
使用 Error Reporting API 写入错误
Error Reporting API 提供了 report
端点,用于将错误信息写入服务。
示例
ASP.NET
ASP.NET NuGet 软件包将 ASP.NET Web 应用中未捕获的异常报告给 Error Reporting。
安装 NuGet 程序包
要在 Visual Studio 中安装 Stackdriver ASP.NET NuGet 程序包,请执行以下操作:
用量
安装 Stackdriver ASP.NET NuGet 程序包之后,请将下列语句添加到应用代码中,以开始向 Stackdriver 发送错误:
using Google.Cloud.Diagnostics.AspNet;
将以下 HttpConfiguration
代码添加到您的 .NET Web 应用的 Register
方法中(用您的实际项目 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 页面:
您也可以使用搜索栏查找此页面。