Cómo utilizar el servicio de seguimiento de errores Sentry incorporado de GitLab

Sentry es una popular plataforma de seguimiento de errores que le brinda visibilidad en tiempo real de los problemas en sus entornos de producción. La función de informe de errores de GitLab le permite llevar los informes de Sentry a su plataforma de control de fuente, ofreciendo una vista centralizada que unifica los errores de Sentry y los problemas de GitLab.

La función originalmente se basaba en una integración con un servicio Sentry existente, ya sea el Sentry.io oficial o su propio servidor autohospedado. Esto cambió con GitLab 14.4, que agregó un backend ligero compatible con Sentry al propio GitLab. Ya no necesita una instalación real de Sentry para obtener informes de errores en GitLab.

Aquí le mostramos cómo comenzar con el backend Sentry integrado. Antes de continuar, vale la pena mencionar que esta capacidad podría no ser adecuada para usted si ya está familiarizado con el panel Sentry. El backend de GitLab es una solución básica que muestra los errores como una lista simple. Es mejor para aplicaciones más pequeñas en las que no desea la sobrecarga de administrar un proyecto Sentry por separado.

Índice de contenidos
  1. Empezando
  2. Configuración del cliente
  3. Probar su integración
  4. Limitaciones
  5. Resumen

Empezando

Cree un nuevo proyecto en GitLab.com o en su propio servidor de GitLab. Vaya a Configuración> Monitor en la barra lateral de su proyecto y luego expanda la sección "Seguimiento de errores". Habilite la casilla de verificación debajo de "Habilitar seguimiento de errores". Asegúrese de que el botón de radio "Error tracking backend" esté configurado en "GitLab". Presione el botón azul "Guardar cambios" para continuar.

La página se recargará. Ahora puede expandir la sección "Seguimiento de errores" nuevamente para revelar su cadena DSN. Esta URL se usa para configurar su biblioteca de cliente Sentry para enviar eventos al servidor de GitLab.

Configuración del cliente

Ahora puede agregar Sentry a su código. Este es un ejemplo básico que usa la biblioteca de cliente Sentry oficial para Node.js. Puede instalar el paquete ejecutando npm install @sentry/node. La documentación sobre todos los clientes disponibles está disponible en Sentry.

const sentry = require("@sentry/node");
 
sentry.init({
    dsn: "https://[email protected]/api/v4/error_tracking/collector/1"
});

Reemplace el valor de DSN con la cadena que copió de la interfaz de usuario de GitLab. La parte anterior a la @ es un token de autenticación especial que permite el acceso al servidor de GitLab. El resto consiste en el único punto de conexión de la API de ingesta de seguimiento de errores para su proyecto.

Probar su integración

Las bibliotecas de clientes oficiales de Sentry comienzan a capturar errores no controlados tan pronto como se configuran con un DSN. Si alguno de los siguientes códigos arroja un error que no detecta, el evento se informará a su servidor de GitLab.

Puede probar la integración capturando eventos manualmente. Aquí hay un ejemplo que crea y reporta un Errorejemplo:

Sentry.captureException(new Error("Sentry test"));

Use la barra lateral de su proyecto en la interfaz de usuario web de GitLab para navegar a la página Supervisar> Seguimiento de errores. El error que capturó debería aparecer en la lista. Haga clic en su entrada para ver el informe completo y el seguimiento de la pila.

Los problemas de GitLab se pueden crear a partir de informes usando el botón azul "Crear problema" en la esquina superior derecha. Esto le permite asignar el trabajo de corrección a los miembros del equipo e iniciar una discusión sobre el problema. El problema conservará un enlace al informe de errores y el seguimiento de la pila se mostrará en línea debajo de la descripción del problema.

Una vez que haya terminado de reparar un problema, use la página Seguimiento de errores para marcarlo como resuelto. Los problemas también se pueden ignorar si no tiene la intención de solucionarlos, tal vez porque fueron transitorios o los registró un cliente desactualizado.

Limitaciones

Actualmente, el backend Sentry integrado de GitLab está diseñado para situaciones de pequeña escala en las que la implementación de Sentry se considera demasiado compleja o innecesaria. La plataforma Sentry completa es un sistema amplio que puede tomar tiempo para configurar y mantener. La integración de GitLab es una sola casilla de verificación en la configuración de su proyecto, pero esta simplicidad tiene un costo.

La lista de seguimiento de errores es su única vista de los informes. Actualmente no puede graficarlos, ver cambios en los volúmenes de informes a lo largo del tiempo o filtrar por usuarios o clientes individuales. La información detallada que muestra la interfaz de usuario de Sentry, como los datos del navegador y del servidor, no se admite actualmente ni aparece en ninguna parte de GitLab.

También debe tener en cuenta que GitLab aún no puede enviar correos electrónicos para nuevos informes de errores. Debe monitorear manualmente la página de seguimiento de errores para mantenerse al tanto de los eventos que generan sus implementaciones.

Dado que GitLab implementa las funciones principales de la API de Sentry, es compatible con la mayoría de los principales SDK y bibliotecas de clientes. A partir de GitLab 14.5, se confirma que funciona con Ruby, JavaScript, Java y Python; otros idiomas tienen soporte parcial o se agregarán en futuras versiones de GitLab.

Resumen

El backend Sentry de GitLab proporciona una forma sencilla de capturar informes de errores de su aplicación y almacenarlos junto con su código. Aunque sus limitaciones actuales lo hacen inadecuado para todos los casos de uso excepto los más simples, sigue siendo una opción atractiva para sitios más pequeños y proyectos personales que no necesitan la complejidad de un servicio completo de Sentry.

El backend integrado también podría ser útil al probar la integración de Sentry con su código. Si está configurando un nuevo cliente o modificando la configuración de uno existente, puede usar su servidor GitLab como un backend temporal para no contaminar su implementación principal de Sentry.

El componente de seguimiento de errores de GitLab permanece en desarrollo y se expandirá en hitos posteriores. Esto debería verlo evolucionar hacia una opción más completa que pueda reemplazar a Sentry independiente en un conjunto más amplio de entornos.

Descubre más contenido

Subir Change privacy settings