Puedes enviar informes de errores a Error Reporting desde aplicaciones de Ruby mediante la biblioteca de Error Reporting para Ruby. Usa la biblioteca de Error Reporting para Ruby si quieres crear grupos de errores en los siguientes casos:
- Tu bucket de registros tiene claves de encriptación administradas por el cliente (CMEK).
- Tus buckets de registros no están en la región
global
. - Deseas informar eventos de error personalizados.
Error Reporting está integrado a algunos servicios de Google Cloud, como App Engine, Compute Engine y Google Kubernetes Engine. Error Reporting muestra los 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 datos de errores a Error Reporting mediante Logging. Para obtener información sobre los requisitos de formato de datos, consulta Dale formato a los mensajes de error en Logging.
Antes de comenzar
- Accede a tu cuenta de Google Cloud. 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.
-
En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
-
Habilita Error Reporting API .
-
En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
-
Habilita Error Reporting API .
- Instala Ruby 2.2+ o una versión posterior.
Instala la biblioteca cliente
La biblioteca de Error Reporting para Ruby te permite supervisar y ver los errores que informan las aplicaciones de Ruby que se ejecutan casi en cualquier lugar.
-
Agrega la gema
google-cloud-error_reporting
a tu Gemfile:gem "google-cloud-error_reporting"
-
Usa Bundler para instalar la gema:
bundle install
Cómo habilitar la biblioteca
Si usas Ruby on Rails, Bundler carga automáticamente la biblioteca a tu aplicación cuando se inicia.
Otras aplicaciones basadas en Rack pueden usar el middleware de Rack que proporciona la biblioteca:
A fin de obtener más información sobre la instalación, lee la documentación de la biblioteca de Error Reporting para Ruby. También puedes informar problemas con el seguimiento de problemas.
Cómo configurar la biblioteca cliente
Puedes personalizar el comportamiento de la biblioteca de Error Reporting para Ruby. Consulta la configuración de la biblioteca para obtener una lista de las opciones de configuración posibles.
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 servicios de Google Cloud otorgan automáticamente la función de escritor de Error Reporting (roles/errorreporting.writer
) a la cuenta de servicio adecuada. Sin embargo, debes otorgar esta función a la cuenta de servicio correspondiente para algunos servicios.
Entorno flexible de App Engine
App Engine otorga automáticamente la función de escritor de Error Reporting (roles/errorreporting.writer
) a la cuenta de servicio predeterminada.
La biblioteca de Error Reporting para Ruby se puede usar 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 la cuenta de servicio que usa el contenedor tenga la función de escritor de Error Reporting (
roles/errorreporting.writer
).Puedes usar la cuenta de servicio predeterminada de Compute Engine o una personalizada.
Para obtener información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Crea tu clúster y otórgale el permiso de acceso
cloud-platform
.Por ejemplo, en el siguiente comando de creación, se especifica el permiso de acceso
cloud-platform
y 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 la cuenta de servicio que usará tu instancia de VM tenga la función de escritor de Error Reporting (
roles/errorreporting.writer
).Puedes usar la cuenta de servicio predeterminada de Compute Engine o una personalizada.
Para obtener información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
-
En el panel de navegación de la consola de Google Cloud, elige Compute Engine y, luego, Instancias de VM.
Selecciona la instancia de VM que deseas que reciba el permiso de acceso de
cloud-platform
.Haz clic en Detener y, luego, en Editar.
En la sección Identidad y acceso a la API, selecciona 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.
Usa la interfaz de configuración de Ruby on Rails
A fin de usar la biblioteca de Error Reporting para Ruby con el marco de trabajo de Ruby on Rails, proporciona los parámetros a través de la interfaz de configuración de Ruby on Rails:
También puedes establecer la configuración compartida para todas las gemas de Stackdriver mediante el siguiente código:
Error Reporting está habilitado de manera predeterminada cuando Rails se ejecuta en el modo de producción. Para habilitar Error Reporting en el modo de desarrollo, agrega el siguiente código:
Usa la interfaz de configuración de instrumentación
A fin de usar la biblioteca de Error Reporting para Ruby en otras aplicaciones basadas en Rack, proporciona los parámetros a través de la interfaz de configuración:
También puedes establecer la configuración compartida para todas las gemas de observabilidad de Google Cloud con lo siguiente:
Ejemplo
Informa errores en el marco de trabajo basado en Rack
La biblioteca de Error Reporting para Ruby facilita la integración de Error Reporting en los populares marcos de trabajo web de Ruby basados en Rack, como Ruby on Rails y Sinatra. Cuando la biblioteca está habilitada, informa de forma automática las excepciones capturadas de la pila de Rack de la aplicación.
Informa errores de forma manual
Para informar un error de forma manual, llama al métodoreport
, como se muestra en el siguiente ejemplo:
Ejecuta apps en un entorno de desarrollo local
Si deseas usar la biblioteca de Error Reporting para Ruby en un entorno de desarrollo local, como ejecutar la biblioteca en tu propia estación de trabajo, debes proporcionar la biblioteca de Error Reporting para Ruby con las credenciales predeterminadas de la aplicación local. Si deseas obtener más información, consulta Autentícate en Error Reporting.
Para usar las muestras de Ruby de esta página desde un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
- Instala Google Cloud CLI.
-
Para inicializar la CLI de gcloud, ejecuta el siguiente comando:
gcloud init
-
Crea credenciales de autenticación locales para tu Cuenta de Google:
gcloud auth application-default login
Para 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 documentación de autenticación de Google Cloud.
Usa la interfaz de configuración de Ruby on Rails
A fin de usar la biblioteca de Error Reporting para Ruby con el marco de trabajo de Ruby on Rails, proporciona los parámetros a través de la interfaz de configuración de Ruby on Rails:
También puedes establecer la configuración compartida para todas las gemas de Stackdriver mediante el siguiente código:
Error Reporting está habilitado de manera predeterminada cuando Rails se ejecuta en el modo de producción. Para habilitar Error Reporting en el modo de desarrollo, agrega el siguiente código:
Usa la interfaz de configuración de instrumentación
A fin de usar la biblioteca de Error Reporting para Ruby en otras aplicaciones basadas en Rack, proporciona los parámetros a través de la interfaz de configuración:
También puedes establecer la configuración compartida para todas las gemas de observabilidad de Google Cloud con lo siguiente:
Ve informes de errores
En el panel de navegación de la consola de Google Cloud, selecciona Error Reporting y, luego, tu proyecto de Google Cloud:
Para obtener más información, consulta Cómo visualizar errores.