Empezando con CI Visibility

Información general

CI Visibility, o CI Pipeline Visibility, te permite monitorizar el estado de tus pipelines CI y visualizar el rendimiento de las ejecuciones de tus pipelines en forma de trazas (traces), donde los tramos (spans) representan los diferentes niveles del pipeline.

Vista de lista de tus pipelines CI en Datadog CI Visibility

Puedes reenviar logs de tareas CI y correlacionarlos automáticamente con tus pipelines en CI Visibility. Dependiendo de los proveedores que utilices, puedes habilitar la recopilación de logs de tareas en la página Configuración de CI Visibility o en la configuración de tu proveedor para integrarlos con Datadog.

También puedes utilizar la CLI datadog-ci para rastrear comandos en tus pipelines, así como etiquetas (tags) personalizadas y comandos de medidas para añadir texto y etiquetas numéricas definidos por el usuario en las trazas de tu pipeline.

CI Visibility proporciona a las organizaciones de DevOps y de ingeniería de plataformas una monitorización y un análisis completos y la capacidad de localizar y solucionar cuellos de botella, optimizar la asignación de recursos y reducir los costes de CI.

Al integrar métricas, logs y alertas de rendimiento, las organizaciones pueden mejorar la velocidad de desarrollo, aumentar la fiabilidad de sus pipelines y tomar decisiones basadas en datos en la nube y en entornos autoalojados.

Configuración de tu proveedor de CI

CI Visibility realiza un seguimiento del rendimiento y de los resultados de tus pipelines CI y muestra los resultados una vez que finaliza el pipeline.

Para empezar a enviar métricas de pipelines, consulte la documentación de uno de los siguientes proveedores de CI compatibles con Datadog a continuación.

aws codepipeline
azure devops extension
buildkite

circleci orb
codefresh
github actions

gitlab
jenkins
teamcity


Si tu proveedor de CI no es compatible, puedes enviar tus eventos de pipelines a Datadog mediante programación. Consulta la sección Enviar eventos de pipelines a Datadog.

Dependiendo del proveedor de CI elegido, es posible que CI Visibility no admita todos los niveles de tu pipeline (etapa, tarea, paso o comando). Para obtener más información sobre cómo CI Visibility define un pipeline CI, consulta la sección Terminología.

Uso de los datos de un pipeline CI

Accede a las métricas de tus pipelines (como tiempos de espera en cola, duraciones, percentiles y estados) para empezar a identificar tendencias y patrones importantes utilizando los datos recopilados a través de tus proveedores de CI.

Dashboard predefinido con widgets que muestran los datos recopilados de tus pipelines, tareas y estapas en CI Visibility

Puedes crear dashboards para visualizar en qué puntos se producen los fallos en tus pipelines o utilizar un dashboard predefinido que contenga widgets rellenados con datos recopilados en CI Visibility para visualizar el estado y el rendimiento de tus pipelines, etapas y tareas CI.

Buscar y gestionar tus pipelines CI

La página Lista de CI Pipeline proporciona una visión completa del rendimiento y la fiabilidad de tus pipelines CI en la rama predeterminada. Accede a estadísticas agregadas, tendencias e información sobre tus pipelines para identificar y solucionar problemas como fallos y regresiones.

Para mejorar la resolución de problemas y agilizar los procesos de gestión de pipelines, haz clic en un pipeline para acceder a la información, revisar historiales de ejecución y consultar logs y datos de telemetría relacionados. Para obtener más información, consulta Buscar y gestionar pipelines CI.

Examinar los resultados en el Explorador de CI Visibility

El Explorador de CI Visibility te permite crear visualizaciones y filtrar tramos de pipelines utilizando los datos recopilados de tus proveedores de CI. Cada ejecución de pipeline se informa como una traza que incluye información sobre la etapa y la tarea.

Ve a Software Delivery > CI Visibility > Executions (Entrega de software > CI Visibility > Ejecuciones) y selecciona Pipeline para empezar a filtrar los resultados del tramo de tu pipeline.

Resultados de la ejecución de un pipeline en el Explorador de CI Visibility, filtrados en el respositorio de Shopist

Ve a Software Delivery > CI Visibility > Executions (Entrega de software > CI Visibility > Ejecuciones) y selecciona Stage para empezar a filtrar los resultados del tramo de tu etapa.

Resultados de la etapa en el Explorador de CI Visibility, filtrados en el respositorio de Shopist

Ve a Software Delivery > CI Visibility > Executions (Entrega de software > CI Visibility > Ejecuciones) y selecciona Job para empezar a filtrar los resultados del tramo de tu tarea.

Resultados de la tarea en el Explorador de CI Visibility, filtrados en el respositorio de Shopist

Ve a Software Delivery > CI Visibility > Executions (Entrega de software > CI Visibility > Ejecuciones) y selecciona Step para empezar a filtrar los resultados del tramo de tu paso.

Resultados del paso en el Explorador de CI Visibility, filtrados en el respositorio de Shopist

Utiliza facetas para personalizar la consulta de búsqueda e identificar los cambios en el tiempo empleado en cada nivel de tu pipeline.

Una vez que hagas clic en un pipeline, podrás acceder a las ejecuciones individuales de pipelines que aparecen en la sección Pipeline Executions (Ejecuciones de pipelines). Al hacer clic en una ejecución de pipeline, podrás ver un gráfico de llama o una lista de tramos en la pestaña Rastrear.

Resultados de la ejecución de un pipeline mostrados en un gráfico de llama para el pipeline de compilación pretest y test

Puedes identificar cuellos de botella en tu pipeline y examinar nodos individuales ordenados de mayor a menor porcentaje de tiempo de ejecución.

Después de haber configurado la Optimización de tests, puedes acceder a la información de los tests que se ejecutaron en tus pipelines CI, incluyendo el estado del test (Fallido, Nuevo defectuoso, Aprobado u Omitido), en la pestaña Ejecuciones de tests, en el panel lateral de una ejecución de pipeline. Para obtener más información, consulta la documentación Gestión de tests defectuosos.

Puede acceder a logs del pipeline o la tarea a través de ejecutores en la nube y autoalojados y ver información sobre tus ejecutores en la pestaña Logs, en el panel lateral de una ejecución de pipeline.

Si utilizas proveedores compatibles, puedes correlacionar métricas de infraestructura con tus tareas de GitLab y acceder a la información del host, del sistema, de las etiquetas del host y de las métricas del host de la tarea de GitLab. Para obtener más información, consulta Correlacionar métricas de infraestructura con tareas de GitLab en Datadog.

Enviar eventos de pipelines a Datadog

Para otros proveedores de pipelines y de pipelines personalizados, puedes enviar eventos de pipeline a Datadog mediante programación, utilizando la API de pipelines de CI Visibility. Para obtener más información, consulta Modelo de datos y tipos de ejecución de pipelines.

Proporciona la siguiente información Git (la URL del repositorio, el SHA de confirmación y el correo electrónico del autor) de la confirmación que activó la ejecución del pipeline en la solicitud.

Crear un monitor de pipelines CI

Envía alertas a los equipos pertinentes de tu organización sobre el estado y las regresiones de rendimiento de los pipelines cuando se produzcan fallos o se superen los umbrales de duración de tus pipelines CI con monitores CI.

Monitor de pipelines CI configurado para activar una alerta cuando la duración media del pipeline de test y Deploy Cart superó el umbral de 5 minutos en el último día

Para configurar un monitor que envía alertas sobre tu pipeline CI cuando la duración media en el último día superó un umbral de 5 minutos:

  1. Ve a Monitors > *New Monitor (Monitores > Nuevo Monitor) y selecciona CI.
  2. Para empezar,, selecciona un tipo de monitor común para pipelines CI, por ejemplo Long Running Pipeline, para activar alertas cuando un pipeline ha estado funcionando durante demasiado tiempo, o Failed Job, para activar alertas por fallos en la tarea, o personaliza tu propia consulta de búsqueda. En este ejemplo, introduce @ci.pipeline.name:test_and_deploy_cart y selecciona el tiempo medio de Duration (@duration).
  3. En la sección Evaluate the query over the, selecciona last 1 day (último día).
  4. Configura las condiciones de activación de las alertas cuando el valor evaluado esté por encima del umbral y especifica valores para los umbrales de alerta o advertencia, como Alert threshold > 300000000000.
  5. En la sección Configure notifications and automations, configura los parámetros de notificación de tu monitor.
  6. Define permisos para el monitor.
  7. Haz clic en Crear.

Referencias adicionales