Error Reporting agrega los eventos de error que se producen en tus servicios en ejecución en la nube. Un evento de error representa una sola ocurrencia de un error en tu aplicación. Los datos almacenados para cada evento incluyen información sobre el error, como la hora en la que ocurrió, el contexto en el que ocurrió y el mensaje de error que se devolvió.
Los eventos de error se informan a través de la API de Error Reporting o Error Reporting los infiere cuando inspecciona las entradas de registro en busca de patrones de texto comunes, como los seguimientos de pila. Error Reporting agrupa los eventos de error que se considera tienen la misma causa raíz.
Error Reporting se habilita automáticamente.
Error Reporting hace un muestreo de hasta 1,000 errores por hora. Cuando se llega a este límite, se estiman los recuentos mostrados. Si se reciben demasiados eventos, Error Reporting hace un muestreo de hasta 100 errores por hora y continúa con la extrapolación de los recuentos.
Cuándo Error Reporting analiza las entradas de registro
Error Reporting es un servicio global compilado en Cloud Logging y puede analizar entradas de registro cuando se cumplen todas las siguientes condiciones:
- Las cargas de trabajo de Assured Workloads están inhabilitadas. Para obtener más información, consulta la Descripción general de Assured Workloads.
- Las claves de encriptación administradas por el cliente (CMEK) están inhabilitadas en todos los buckets de registros que almacenan la entrada de registro. Error Reporting no puede almacenar entradas de registro en buckets de registros que tienen habilitada la CMEK. Para obtener información sobre cómo determinar la configuración de CMEK de un bucket de registros, consulta Verifica la habilitación de la clave.
- El bucket de registros satisface una de las siguientes condiciones:
- El bucket de registros se almacena en el mismo proyecto en el que se originaron las entradas de registro.
- Las entradas de registro se enrutaron a un proyecto y, luego, ese proyecto las almacenó en un bucket de registros que le pertenece.
Cómo se agrupan los eventos de error
Cuando Error Reporting evalúa las entradas de registro para identificar eventos de error, ignora las entradas de registro que cumplen con las siguientes condiciones:
- Son las entradas de registro escritas por el entorno estándar de App Engine que tienen un nivel de gravedad inferior a
ERROR. - Marcos de pila que no son propiedad del usuario (por ejemplo, aquellos que pertenecen a bibliotecas públicas)
Cuando se analiza una entrada de registro, Error Reporting realiza las siguientes modificaciones antes de inferir eventos de error:
- Reemplaza cualquier secuencia repetida de uno o más marcos de pila por un único caso de esa secuencia.
- Se quitan los métodos y símbolos ingresados por el compilador.
Error Reporting aplica estas reglas, en el orden especificado, para agrupar los eventos de error:
| Evento de error | Agrupado por |
|---|---|
| Eventos de error provocados por un problema general en el entorno.
Ejemplos de problemas específicos de App Engine: com.google.apphosting.runtime.HardDeadlineExceededError com.google.appengine.api.datastore.DatastoreTimeoutException Problemas de Java: java.util.concurrent.CancellationException |
Agrupado por tipo de excepción. |
| Eventos de error con un seguimiento de pila. En el caso de excepciones anidadas, se considera la excepción más interna.
Por ejemplo: runtime error: index out of range
package1.func1()
file1:20
package2.func2()
file2:33 |
Agrupado por tipo de excepción y los 5 marcos principales. |
| Eventos de error sin seguimiento de pila, pero con un mensaje.
Por ejemplo: runtime error: index out of range
func1() |
Agrupado por mensaje y (si existe) nombre de función. Solo se consideran los primeros 3 tokens del mensaje. En el ejemplo de la izquierda, estos tokens son runtime, error y index. |
Regionalidad de los datos
Si configuras Assured Workloads para los requisitos de residencia de datos o Impact Level 4 (IL4), entonces Google Cloud se inhabilita automáticamente Error Reporting.
En Cloud Logging, puedes regionalizar tus registros enrutándolos a una ubicación específica. En la página Grupos de errores, Error Reporting organiza y muestra los grupos de errores según la región del bucket de registros que contiene las entradas de registro. Por ejemplo, un grupo de errores que aparece en us-central-1 solo contiene registros de errores que forman parte de un bucket de registros en us-central-1. Los grupos de errores globales solo contienen registros de errores que forman parte de un bucket de registros en la región global.
Para filtrar la región de los grupos de errores que se muestran en la página Error Groups, selecciona un valor en el menú Region. El valor predeterminado de este menú es global.
