Error Reporting te permite agregar fallas y diagnosticar excepciones de tiempo de ejecución de tus aplicaciones de EC2. Puedes enviar datos de errores transmitiendo registros a Cloud Logging o llamando directamente a la API de Error Reporting. Si usas Logging, tus entradas de registro deben cumplir con los requisitos de formato.
Usa Logging para informar sobre errores
Para conectar tus aplicaciones EC2 a Error Reporting, envía tus excepciones, o bien otros errores a Logging.
Por ejemplo:
- Conecta el sistema de Amazon Web Services (AWS) a Google Cloud. Para obtener más información, consulta Instala el agente de Logging en VMs individuales.
- Instala el agente de Logging
google-fluentdsegún corresponda a tu entorno. Para obtener instrucciones, consulta Instala el agente de Logging. Modifica tu aplicación para que registre las excepciones y sus seguimientos de pila en Logging.
Debes incluir toda la información de un solo error o excepción en la misma entrada de registro, incluidos todos los marcos de cualquier registro de seguimiento de pila. Si no se incluye toda la información, es posible que Error Reporting no detecte el error. Puedes usar el formato JSON estructurado para las cargas útiles de las entrada de registro y, así, incluir diferentes tipos de información para cada error.
Java
Agrega lo siguiente a tu archivo pom.xml:
Luego, usa un código como el siguiente para enviar los datos de excepción:
Python
Primero, instala la biblioteca fluent-logger-python:
sudo pip install fluent-logger
Luego, usa un código como el siguiente para enviar los datos de excepción:
Node.js
Primero, instala la biblioteca fluent-logger-node:
npm install fluent-logger
Luego, usa un código como el siguiente para enviar los datos de excepción:
Go
Primero, instala el paquete fluent-logger-golang:
go get github.com/fluent/fluent-logger-golang/
Luego, usa un código como el siguiente para enviar datos de errores:
Usa la API de Error Reporting para escribir errores
La API de Error Reporting proporciona un extremo report para escribir información de error en el servicio.
Habilita la API de Error Reporting si aún no está habilitada.
Roles necesarios para habilitar las APIs
Para habilitar APIs, necesitas el permiso
serviceusage.services.enable. Si creaste el proyecto, es probable que ya tengas este permiso a través del rol de propietario (roles/owner). De lo contrario, puedes obtener este permiso a través del rol de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin). Obtén más información para otorgar roles.Informa errores a la API con la API de REST o una biblioteca cliente.
Ejemplos
ASP.NET
El paquete NuGet de ASP.NET informa las excepciones no detectadas de las aplicaciones web de ASP.NET a Error Reporting.
Instala el paquete NuGet
Para instalar el paquete Stackdriver ASP.NET NuGet en Visual Studio, haz lo siguiente:
- Haz clic con el botón derecho en tu solución y selecciona Administrar paquetes de NuGet para la solución.
- Selecciona la casilla de verificación Incluir lanzamiento anticipado.
- Busca y, luego, instala el paquete llamado
Google.Cloud.Diagnostics.AspNet.
Uso
Una vez que hayas instalado el paquete NuGet de Stackdriver ASP.NET, agrega la siguiente sentencia al código de la aplicación para comenzar a enviar errores a Stackdriver:
using Google.Cloud.Diagnostics.AspNet;
Agrega el siguiente código HttpConfiguration al método Register de tu app web de .NET después de reemplazar your-project-id por tu ID del proyecto real para habilitar el registro de excepciones:
Una vez que hayas agregado este método a tu aplicación ASP.NET, podrás ver las excepciones no detectadas que se produzcan a medida que se informen a Google Clouden la sección Error Reporting de la consola de Google Cloud .
C#
Puedes encontrar el siguiente ejemplo en el repositorio GoogleCloudPlatform/dotnet-docs-samples. Para usarlo, luego de compilar el proyecto, especifica el ID del proyecto:
C:\...\bin\Debug> set GOOGLE_PROJECT_ID=[YOUR_PROJECT_ID]
Asegúrate de reemplazar [YOUR_PROJECT_ID] por el valor correcto de la consola deGoogle Cloud .
Luego, envía datos de excepciones con un código similar al siguiente:
Go
Consulta Configura Error Reporting para Go.
Java
Consulta Configura Error Reporting para Java.
Node.js
Consulta Configura Error Reporting para Node.js.
Ruby
Consulta Configura Error Reporting para Ruby.
Python
Consulta Configura Error Reporting para Python.
PHP
Consulta Configura Error Reporting para PHP.
Cómo ver grupos de errores
En la consola de Google Cloud , ve a la página Error Reporting:
También puedes usar la barra de búsqueda para encontrar esta página.