Informe de ejemplo de tendencia de índice de superación de canalizaciones

Servicios de Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

En este artículo se muestra cómo crear un informe que muestre la tendencia de velocidad de paso diaria de una canalización. La tasa de paso de una canalización es el porcentaje de ejecuciones de canalización correctas en el total de ejecuciones de canalización. Es similar al gráfico "Tendencia de índice de superación" del informe de índice de superación de canalizaciones. En la imagen siguiente se muestra un ejemplo de esta tendencia.

Captura de pantalla del informe de tendencia de índice de superación de ejecución de canalizaciones de Power BI.

Nota:

Las consultas de muestra en este artículo requieren la versión v3.0-preview o posterior de la fuente OData de Analytics. Comparta sus comentarios.

Categoría Requisitos
Niveles de acceso - Miembro del proyecto.
- Al menos acceso Básico.
Permisos De forma predeterminada, los miembros del proyecto tienen permiso para consultar Analytics y crear vistas. Para obtener más información sobre otros requisitos previos relacionados con las actividades de habilitación de servicios y características y seguimiento de datos generales, consulte Permisos y requisitos previos para acceder a Analytics.

Nota:

En este artículo se da por hecho que has leído Información general de informes de ejemplo mediante consultas de OData y tienes un conocimiento básico de Power BI.

Consultas de ejemplo

Para crear informes de tendencias de velocidad de paso diferentes pero similares, use las siguientes consultas del PipelineRuns conjunto de entidades.

Nota:

Para buscar las propiedades disponibles para el filtrado o los informes, consulte la referencia de Metadata para Azure Pipelines. Puede filtrar las consultas o devolver propiedades mediante cualquier valor Property definido en un EntityType, o cualquier valor NavigationPropertyBinding Path enumerado para un EntitySet. Cada EntitySet se asigna a un EntityType, que describe el tipo de datos de cada propiedad.

Tendencia de índice de superación de una canalización con nombre

Las consultas siguientes devuelven las ejecuciones de canalización para una canalización específica a partir de una fecha de inicio especificada.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/PipelineRuns?"
        &"$apply=filter( "
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and CompletedDate ge {startdate} "
                &"and CanceledCount ne 1 "
        &") "
        &"/groupby( "
            &"(CompletedOn/Date), "
                &"aggregate "
                &"($count as TotalCount, "
            &"SucceededCount with sum as SucceededCount , "
                &"FailedCount with sum as FailedCount, "
            &"PartiallySucceededCount with sum as PartiallySucceededCount)) "
        &"/compute( "
    &"SucceededCount mul 100.0 div TotalCount as PassRate, "
    &"FailedCount mul 100.0 div TotalCount as FailRate, "
    &"PartiallySucceededCount mul 100.0 div TotalCount as PartiallySuccessfulRate) "
    &"&$orderby=CompletedOn/Date asc "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Cadenas de sustitución y desglose de consultas

Reemplace las cadenas siguientes por los valores. No incluya los corchetes {} en la sustitución. Por ejemplo, si el nombre de su organización es "Fabrikam", reemplace {organization} por Fabrikam, no por {Fabrikam}.

  • {organization} - El nombre de la organización
  • {project} - El nombre del proyecto de tu equipo
  • {pipelinename} - El nombre de la canalización. Ejemplo: Fabrikam hourly build pipeline
  • {startdate} - La fecha para comenzar tu informe. Formato: YYYY-MM-DD seguido de Z (indicador UTC). Ejemplo: 2026-09-01Z representa el 1 de septiembre de 2026. No incluya entre comillas ni corchetes.

Desglose de consultas

En la tabla siguiente se describe cada parte de la consulta.

Elemento de consulta

Descripción


$apply=filter(

Iniciar cláusula filter().

Pipeline/PipelineName eq '{pipelinename}'

Devuelve ejecuciones de canalización para la canalización especificada.

and CompletedDate ge {startdate}

Devuelve las ejecuciones de canalización en la fecha especificada o después.

and CanceledCount ne 1

Omite las ejecuciones de canalización canceladas.

)

Cláusula de cierre filter().

/groupby(

Iniciar cláusula groupby().

(CompletedOn/Date),

Agrupar por fecha de finalización de la ejecución de la canalización.

aggregate

Inicia la cláusula aggregate para todas las ejecuciones de canalización que coinciden con los criterios de filtro.

($count as TotalCount,

Cuente el número total de ejecuciones como TotalCount.

SucceededCount with sum as SucceededCount ,

Cuente el número de ejecuciones exitosas como SucceededCount.

FailedCount with sum as FailedCount,

Cuente el número de ejecuciones con errores como FailedCount.

PartiallySucceededCount with sum as PartiallySucceededCount))

Cuente el número de ejecuciones parcialmente exitosas como PartiallySucceededCount. Cerrar las cláusulas aggregate() y groupby().

/compute(

Inicio de la cláusula compute().

SucceededCount mul 100.0 div TotalCount as PassRate,

Calcule PassRate para cada día dividiendo el número de ejecuciones correctas por número de ejecuciones totales.

FailedCount mul 100.0 div TotalCount as FailRate,

Calcule FailRate para cada día dividiendo el número de ejecuciones con errores por número de ejecuciones totales.

PartiallySucceededCount mul 100.0 div TotalCount as PartiallySuccessfulRate)

Calcule PartiallySuccessfulRate para cada día dividiendo el número de ejecuciones parcialmente correctas por número de ejecuciones totales.

&$orderby=CompletedOn/Date asc

Ordene el resultado en orden ascendente en función de la fecha de ejecución de la canalización.

Tendencia de índice de superación de un id. de canalización

Puede cambiar el nombre de las canalizaciones. Para evitar que los informes de Power BI se interrumpan al cambiar un nombre de canalización, use el identificador de canalización en lugar del nombre de la canalización. Puede tener el ID de la canalización en la URL de la página de ejecuciones de canalización.

https://dev.azure.com/{organization}/{project}/_build?definitionId={pipelineid}

Las consultas siguientes devuelven las ejecuciones de canalización para un id. canalización específico a partir de una fecha de inicio especificada.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/PipelineRuns?"
        &"$apply=filter( "
                &"PipelineId eq {pipelineId} "
                &"and CompletedDate ge {startdate} "
                &"and CanceledCount ne 1 "
        &") "
        &"/groupby( "
            &"(CompletedOn/Date), "
                &"aggregate "
                &"($count as TotalCount, "
            &"SucceededCount with sum as SucceededCount , "
                &"FailedCount with sum as FailedCount, "
            &"PartiallySucceededCount with sum as PartiallySucceededCount)) "
        &"/compute( "
    &"SucceededCount mul 100.0 div TotalCount as PassRate, "
    &"FailedCount mul 100.0 div TotalCount as FailRate, "
    &"PartiallySucceededCount mul 100.0 div TotalCount as PartiallySuccessfulRate) "
    &"&$orderby=CompletedOn/Date asc "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Tendencia de la tasa de éxito, filtrado por rama

Es posible que quiera ver la tendencia de velocidad de acceso de una canalización solo para una rama determinada. Para crear el informe, siga estos pasos adicionales junto con los pasos descritos en las secciones Cambiar tipo de datos de columna y Crear el informe gráfico de líneas.

  • Expanda Branch en Branch.BranchName.
  • Seleccione Power BI Visualization Segmentación y añada Branch.BranchName al Campo del segmentador.
  • Seleccione la rama de la segmentación para la que necesita ver la tendencia de índice de superación.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/PipelineRuns?"
        &"$apply=filter( "
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and CompletedDate ge {startdate} "
                &"and CanceledCount ne 1 "
        &") "
        &"/groupby( "
            &"(Branch/BranchName, CompletedOn/Date), "
                &"aggregate "
                &"($count as TotalCount, "
            &"SucceededCount with sum as SucceededCount , "
                &"FailedCount with sum as FailedCount, "
            &"PartiallySucceededCount with sum as PartiallySucceededCount)) "
        &"/compute( "
    &"SucceededCount mul 100.0 div TotalCount as PassRate, "
    &"FailedCount mul 100.0 div TotalCount as FailRate, "
    &"PartiallySucceededCount mul 100.0 div TotalCount as PartiallySuccessfulRate) "
    &"&$orderby=CompletedOn/Date asc "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Tendencia de índice de superación, filtrar por motivo de compilación

Es posible que vea la tendencia de índice de superación de una canalización solo por motivos de compilación específicos (Manual, BatchedCI, solicitud de incorporación de cambios, etc.). Para crear el informe, siga estos pasos adicionales junto con los pasos descritos en las secciones Cambiar tipo de datos de columna y Crear el informe gráfico de líneas.

  • Seleccione Segmentación en el panel Visualizaciones y añada RunReason al Campo del segmentador.
  • Seleccione la razón de ejecución de la segmentación para la que necesita ver la tendencia de índice de superación.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/PipelineRuns?"
        &"$apply=filter( "
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"and CompletedDate ge {startdate} "
                &"and CanceledCount ne 1 "
        &") "
        &"/groupby( "
            &"(RunReason, CompletedOn/Date), "
                &"aggregate "
                &"($count as TotalCount, "
            &"SucceededCount with sum as SucceededCount , "
                &"FailedCount with sum as FailedCount, "
            &"PartiallySucceededCount with sum as PartiallySucceededCount)) "
        &"/compute( "
    &"SucceededCount mul 100.0 div TotalCount as PassRate, "
    &"FailedCount mul 100.0 div TotalCount as FailRate, "
    &"PartiallySucceededCount mul 100.0 div TotalCount as PartiallySuccessfulRate) "
    &"&$orderby=CompletedOn/Date asc "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Tendencia de velocidad de paso para todas las canalizaciones de proyecto

Use las siguientes consultas para ver la tendencia de velocidad de paso de todas las canalizaciones del proyecto en un único informe. Para crear el informe, siga estos pasos adicionales junto con lo que se describe en las secciones Cambiar tipo de datos de columna y Crear el informe gráfico de líneas.

  • Expanda Pipeline en Pipeline.PipelineName.
  • Seleccione Segmentación en el panel Visualizaciones y añada el campo Pipeline.PipelineName al campo de la segmentación.
  • Seleccione la canalización de compilación la segmentación para la que necesita ver la tendencia de índice de superación.

Consulte el resumen de resultados del informe de ejemplo de todas las canalizaciones , que tiene pasos detallados similares.

Copie y pegue la siguiente consulta Power BI directamente en la ventana Get Data>Blank Query. Para obtener más información, consulte Información general sobre informes de ejemplo mediante consultas de OData.

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/PipelineRuns?"
        &"$apply=filter( "
                &"CompletedDate ge {startdate} "
                &"and CanceledCount ne 1 "
                &") "
        &"/groupby( "
        &"(Pipeline/PipelineName, CompletedOn/Date), "
            &"aggregate "
                &"($count as TotalCount, "
                &"SucceededCount with sum as SucceededCount , "
            &"FailedCount with sum as FailedCount, "
                &"PartiallySucceededCount with sum as PartiallySucceededCount)) "
            &"/compute( "
        &"SucceededCount mul 100.0 div TotalCount as PassRate, "
    &"FailedCount mul 100.0 div TotalCount as FailRate, "
    &"PartiallySucceededCount mul 100.0 div TotalCount as PartiallySuccessfulRate) "
    &"&$orderby=CompletedOn/Date asc "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

(Opcional) Cambiar el nombre de la consulta

Puede cambiar el nombre de la etiqueta de consulta predeterminada, Query1, a algo más significativo. Escriba un nuevo nombre en el panel Configuración de consulta .

Captura de pantalla de las opciones del menú de consulta de Power BI, renombrar consulta.

Expandir columnas en Editor de Power Query

Antes de crear el informe, expanda columnas que devuelven registros que contienen varios campos. En este caso, expanda la CompletedOn columna para aplanarla a CompletedOn.Date.
Para obtener información sobre cómo expandir elementos de trabajo, consulte Transformar datos de Analytics para generar informes de Power BI.

Cambio del tipo de datos de columna

En el menú Transformar , cambie el tipo de datos de las columnas siguientes. Para obtener información sobre cómo hacerlo, consulte Transformación de un tipo de datos de columna.

  • Cambie las PassRatecolumnas , FailRatey PartiallySuccessfulRate a Número decimal.
  • Cambie TotalCount a Número entero.

(Opcional) Cambiar el nombre de los campos de columna

Puede cambiar el nombre de los campos de columna para que sean más fáciles de usar. Para obtener información sobre cómo hacerlo, consulte Cambiar el nombre de los campos de columna.

Cierre la consulta y aplique los cambios

Cuando termine todas las transformaciones de datos, seleccione Cerrar y aplicar en el menú Inicio . Esta acción guarda la consulta y le devuelve a la pestaña Report en Power BI.

Captura de pantalla de Editor de Power Query opción Cerrar y aplicar.

Crear el informe Gráfico de líneas

  1. En Power BI, en Visualizations, seleccione el informe del gráfico de líneas.

    Captura de pantalla de las selecciones de campos de visualización para el informe de gráfico de líneas de tendencia de índice de superación.

  2. Agregue CompletedOn.Date al Eje X. Haga clic con el botón derecho en el campo y elija CompletedOn.Date.

  3. Agregue PassRate al eje Y y haga clic con el botón derecho en él para cerciorarse de que suma esté seleccionada.

  4. Para cambiar el título del informe, seleccione el icono de pincel en el Panel de Visualizaciones, seleccione General, expanda Título y reemplace el texto existente.

    En la imagen siguiente se muestra el informe resultante.

    Captura de pantalla del informe de tendencia de índice de superación de ejecución de canalizaciones de Power BI de ejemplo.