Puedes enviar eventos de errores a Error Reporting desde aplicaciones de Node.js mediante la biblioteca de Error Reporting para Node.js. Usa la biblioteca de Error Reporting para Node.js para crear grupos de errores en los siguientes casos:
- Un bucket de registros que contiene tus entradas de registro tiene claves de encriptación administradas por el cliente (CMEK).
- 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 almacenó esas entradas de registro en un bucket de registros que posee.
- Quieres informar eventos de errores personalizados.
Error Reporting está integrado en algunos Google Cloud servicios, como Cloud Run Functions y App Engine, Compute Engine y Google Kubernetes Engine. Error Reporting muestra los eventos de errores que registran las aplicaciones que se ejecutan en esos servicios en Cloud Logging. Para obtener más información, ve a Ejecuta en Google Cloud en esta página.
También puedes enviar eventos de errores a Error Reporting mediante Logging. Para obtener información sobre los requisitos de formato de datos, consulta Dale formato a una entrada de registro para informar eventos de errores.
Antes de comenzar
- Accede a tu Google Cloud cuenta de. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Error Reporting API .
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Error Reporting API .
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.- Prepara el entorno para el desarrollo en Node.js.
Instala la biblioteca cliente
La biblioteca de Error Reporting para Node.js te permite supervisar y ver los eventos de errores que informan las aplicaciones de Node.js que se ejecutan en casi cualquier lugar.
-
Usa npm para instalar el paquete:
npm install @google-cloud/error-reporting
-
Importa la biblioteca y crea una instancia de cliente para comenzar a informar errores:
Para obtener más información sobre la instalación, lee la documentación de la biblioteca de Error Reporting para Node.js. También puedes informar problemas con el seguimiento de problemas.
Configura la biblioteca cliente
Puedes personalizar el comportamiento de la biblioteca de Error Reporting para Node.js. Consulta la configuración de la biblioteca para obtener una lista de las posibles opciones de configuración. Estas opciones se pueden pasar en el objeto options que se transfiere al constructor de la biblioteca.
Otras integraciones
Para obtener más información sobre las integraciones entre la biblioteca de Error Reporting para Node.js y otros frameworks web de Node.js, consulta el repositorio de la biblioteca en GitHub.
Ejecuta apps en Google Cloud
Para crear grupos de errores con
projects.events.report, tu cuenta de servicio requiere el
rol de escritor de Error Reporting (roles/errorreporting.writer).
Algunos Google Cloud servicios otorgan automáticamente el
rol de escritor de Error Reporting (roles/errorreporting.writer) a la cuenta de servicio adecuada. Sin embargo, debes otorgar este rol a la cuenta de servicio adecuada para algunos servicios.
Cloud Run y Cloud Run Functions
La cuenta de servicio predeterminada que usa Cloud Run tiene los
permisos del rol de escritor de Error Reporting (roles/errorreporting.writer).
Se puede usar la biblioteca de Error Reporting para Node.js sin necesidad de proporcionar credenciales de forma explícita.
Cloud Run está configurado para usar Error Reporting de manera automática. Las excepciones de JavaScript no administradas aparecerán en Logging y Error Reporting las procesará sin la necesidad de usar la biblioteca de Error Reporting para Node.js.
Ejemplo:Entorno flexible de App Engine
App Engine otorga automáticamente el
rol de escritor de Error Reporting (roles/errorreporting.writer)
a tu cuenta de servicio predeterminada.
Se puede usar la biblioteca de Error Reporting para Node.js sin necesidad de proporcionar credenciales de forma explícita.
Error Reporting se habilita de manera automática para las aplicaciones del entorno flexible de App Engine. No se requiere ninguna configuración adicional.Google Kubernetes Engine
Para usar Error Reporting con Google Kubernetes Engine, haz lo siguiente:
Asegúrate de que se haya otorgado el rol de escritor de Error Reporting (
roles/errorreporting.writer) a la cuenta de servicio que usará tu contenedor.Puedes usar la cuenta de servicio predeterminada de Compute Engine o una cuenta de servicio personalizada.
Para obtener información sobre cómo otorgar funciones, consulta Administración del acceso a proyectos, carpetas y organizaciones.
Crea tu clúster y otórgale el
cloud-platformpermiso de acceso.Por ejemplo, el siguiente comando create especifica el permiso de acceso
cloud-platformy una cuenta de servicio:gcloud container clusters create CLUSTER_NAME --service-account SERVICE_ACCT_NAME --scopes=cloud-platform
Compute Engine
Para usar Error Reporting con instancias de VM de Compute Engine, haz lo siguiente:
Asegúrate de que se haya otorgado el rol de escritor de Error Reporting (
roles/errorreporting.writer) a la cuenta de servicio que usará tu instancia de VM.Puedes usar la cuenta de servicio predeterminada de Compute Engine o una cuenta de servicio personalizada.
Para obtener información sobre cómo otorgar funciones, consulta Administración del acceso a proyectos, carpetas y organizaciones.
-
En la Google Cloud consola de, ve a la página Instancias de VM.
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Compute Engine.
Selecciona la instancia de VM a la que deseas otorgar el
cloud-platformpermiso de acceso.Haz clic en Detener y, luego, en Editar.
En la sección Identidad y acceso a la API, elige una cuenta de servicio que tenga el rol de escritor de Error Reporting (
roles/errorreporting.writer).En la sección Permisos de acceso, selecciona Permitir el acceso total a todas las APIs de Cloud y, luego, guarda los cambios.
Haz clic en Iniciar/Reanudar.
Ejemplo
Para informar un error de forma manual, llama al método report, como se muestra en el siguiente ejemplo:
Informa sobre errores con Express.js
La biblioteca de Error Reporting para Node.js puede integrar Error Reporting en frameworks web populares de Node.js, como Express.js:
Ejecuta apps en un entorno de desarrollo local
Para usar la biblioteca de Error Reporting para Node.js en un entorno de desarrollo local, como ejecutar la biblioteca en tu propia estación de trabajo, debes proporcionar a la biblioteca de Error Reporting para Node.js las credenciales predeterminadas de la aplicación local. Para obtener más información, consulta Autentícate en Error Reporting.
Para usar las muestras de Node.js incluidas en esta página en un entorno de desarrollo local, instala e inicializa la gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
-
Instala Google Cloud CLI.
-
Si usas un proveedor de identidad (IdP) externo, primero debes acceder a la gcloud CLI con tu identidad federada.
-
Si usas un shell local, crea credenciales de autenticación locales para tu cuenta de usuario:
gcloud auth application-default login
No es necesario que lo hagas si usas Cloud Shell.
Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
El método projects.events.report también
admite claves de API.
Si deseas usar claves de API para la autenticación, no necesitas
configurar un archivo local de credenciales predeterminadas de la aplicación.
Para obtener más información, consulta
Crea una clave de API
en la Google Cloud documentación de autenticación.
Visualiza grupos de errores
En la Google Cloud consola de, ve a la página Error Reporting.
También puedes usar la barra de búsqueda para encontrar esta página.
Para obtener más información, consulta Visualiza y filtra grupos de errores.