É possível enviar erros dos aplicativos do Google Kubernetes Engine para o Error Reporting de duas maneiras:
Fazendo login no Cloud Logging. Se você já estiver usando o Cloud Logging, o único requisito adicional é que as entradas de registro sejam reconhecíveis pelo Error Reporting. Para mais informações sobre requisitos de erros de formatação, leia Erros de formatação no Cloud Logging (em inglês).
Usando a API Error Reporting. Seu aplicativo pode enviar solicitações HTTP por meio da API REST ou usar bibliotecas experimentais em diversas linguagens.
Usar o Logging para relatar erros
O agente de geração de registros padrão do GKE fornece uma solução gerenciada para implantar e gerenciar os agentes que enviam os registros dos clusters para o Cloud Logging. A estrutura do agente depende da versão do cluster. Para mais informações sobre esse agente, consulte Como gerenciar registros do GKE.
O Error Reporting exige que exceções ou stack traces estejam contidos
em uma única entrada de registro. A maioria dos agentes de geração de registros consegue reconhecer que várias linhas de registro (frames de pilha impressos em uma nova linha) representam um stack trace e o enviam ao Cloud Logging como uma única entrada de registro.
Se o agente não conseguir reconstruir várias linhas como um único erro, use o endpoint de API projects.events.report, que permite controlar o conteúdo de um erro.
Usar a API Error Reporting para gravar erros
A API Error Reporting fornece um endpoint report para gravar informações de erro no serviço.
Ative a API Error Reporting.
Funções necessárias para ativar APIs
Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (
roles/serviceusage.serviceUsageAdmin), que contém a permissãoserviceusage.services.enable. Saiba como conceder papéis.Informe erros na API usando a API REST ou uma biblioteca de cliente.
Amostras
ASP.NET
O pacote NuGet para ASP.NET relata ao Error Reporting exceções não identificadas em aplicativos da Web da ASP.NET.
Instalar o pacote NuGet
Para instalar o pacote NuGet para ASP.NET do Stackdriver no Visual Studio:
- Clique com o botão direito do mouse em sua solução e selecione Gerenciar pacotes NuGet para solução.
- Marque a caixa de seleção Incluir pré-lançamento.
- Pesquise e instale o pacote
Google.Cloud.Diagnostics.AspNet.
Uso
Após instalar o pacote NuGet para ASP.NET do Stackdriver, adicione o comando a seguir ao código do seu aplicativo para começar a enviar os erros ao Stackdriver:
using Google.Cloud.Diagnostics.AspNet;
Adicione o seguinte código HttpConfiguration ao método Register do seu app da web .NET depois de substituir your-project-id pelo ID do projeto atual para ativar a geração de relatórios de exceções:
Depois de adicionar esse método ao aplicativo ASP.NET, é possível visualizar as exceções não identificadas assim que elas forem registradas no Google Cloudna seção Error Reporting do console do Google Cloud .
C#
O exemplo a seguir está localizado no repositório GoogleCloudPlatform/dotnet-docs-samples. Para usá-lo após a criação do projeto, especifique seu código do projeto:
C:\...\bin\Debug> set GOOGLE_PROJECT_ID=[YOUR_PROJECT_ID]
Substitua [YOUR_PROJECT_ID] pelo valor correto do consoleGoogle Cloud .
Em seguida, envie os dados da exceção com um código semelhante a este:
Go
Java
Node.js
Ruby
Python
PHP
Ver grupos de erros
No console Google Cloud , acesse a página Error Reporting:
Também é possível encontrar essa página usando a barra de pesquisa.