Informe de ejemplo de errores de fase de canalización
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
En este artículo se muestra cómo crear un informe de errores de fase diaria de una canalización. Este informe es similar al gráfico "Tendencia de errores" del informe de velocidad de paso de canalización.
En la imagen siguiente se muestra un ejemplo de informe de errores de fase para una canalización específica de octubre de 2022 al 15 de diciembre de 2022.
Importante
La integración y el acceso de Power BI a la fuente OData del servicio Analytics están disponibles con carácter general para Azure DevOps Services y Azure DevOps Server 2020 y versiones posteriores. Las consultas de ejemplo proporcionadas en este artículo solo son válidas en Azure DevOps Server 2020 y versiones posteriores, y dependen de la versión v3.0-preview o posterior. Le recomendamos que use estas consultas y nos proporcione sus comentarios.
Requisitos previos
- Niveles de acceso: debe ser miembro de un proyecto con acceso básico o superior.
- 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 supuesto que lee Información general de los informes de ejemplo mediante consultas de OData y tiene conocimientos básicos de Power BI.
Consultas de ejemplo
Los informes de tendencias de fase, tarea o error del trabajo se pueden crear consultando el PipelineRunActivityResults
conjunto de entidades.
Nota:
Para determinar las propiedades disponibles con fines de filtro o informe, consulte Referencia de metadatos para Azure Pipelines. Puede filtrar las consultas o devolver propiedades mediante cualquiera de los Property
valores de un EntityType
valor o NavigationPropertyBinding Path
disponible con .EntitySet
Cada EntitySet
uno corresponde a un objeto EntityType
. Para obtener más información sobre el tipo de datos de cada valor, revise los metadatos proporcionados para el correspondiente EntityType
.
Tendencia de errores preconfigurado
Para ver la tendencia de errores provisionales de una canalización específica a partir de una fecha especificada, use las siguientes consultas.
Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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/PipelineRunActivityResults?"
&"$apply=filter( "
&"Pipeline/PipelineName eq '{pipelinename}' "
&"and PipelineRunCompletedOn/Date ge {startdate} "
&"and PipelineRunOutcome eq 'Failed' "
&"and TaskOutcome eq 'Failed' "
&") "
&"/groupby( "
&"(PipelineRunCompletedOn/Date, PipelineRunId, PipelineJob/StageName ), "
&"aggregate (FailedCount with sum as FailedCount)) "
&"/groupby( "
&"(PipelineRunCompletedOn/Date, PipelineJob/StageName ), "
&"aggregate "
&"(cast(FailedCount gt 0, Edm.Int32) with sum as FailedStageCount)) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Cadenas de sustitución y desglose de consultas
Sustituya las cadenas siguientes por sus valores. No incluya corchetes {} con la sustitución. Por ejemplo, si el nombre de la organización es "Fabrikam", reemplace por {organization}
Fabrikam
, no {Fabrikam}
por .
{organization}
- El nombre de la organización{project}
- El nombre del proyecto de equipo{pipelinename}
: el nombre de la canalización. Ejemplo:Fabrikam hourly build pipeline
{startdate}
- La fecha de inicio del informe. Formato: AAAA-MM-DDZ. Ejemplo:2021-09-01Z
representa el 1 de septiembre de 2021. No incluya entre comillas o corchetes y use dos dígitos tanto para el mes como para la fecha.
Desglose de consultas
En la tabla siguiente se describe cada parte de la consulta.
Elemento de consulta
Descripción
$apply=filter(
Cláusula Start filter()
.
Pipeline/PipelineName eq '{pipelinename}'
Devuelve los resultados de la tarea para una canalización específica.
and PipelineRunCompletedOn/Date ge {startdate}
Devuelve los resultados de la tarea para las ejecuciones de canalización en o después de la fecha especificada.
and PipelineRunOutcome eq 'Failed'
Devuelve los resultados de la tarea en los que se produce un error en el resultado de la compilación.
and TaskOutcome eq 'Failed'
Devuelve los resultados de la tarea en los que se produce un error en el resultado de la tarea.
)
Cláusula Close filter
.
/groupby(
Cláusula Start groupby()
.
(PipelineRunCompletedOn/Date, PipelineRunId, PipelineJob/StageName ),
Agrupe por fecha de finalización de la ejecución de canalización, id. de compilación y nombre de fase.
aggregate (FailedCount with sum as FailedCount))
Para cada día, id. de compilación y fase; contar el número total de errores. Será el número total de errores de tarea y no los errores de fase.
/groupby(
Cláusula Start groupby()
.
(PipelineRunCompletedOn/Date, PipelineJob/StageName ),
Agrupar por día y nombre de fase.
aggregate
Cláusula Start aggregate
.
(cast(FailedCount gt 0, Edm.Int32) with sum as FailedStageCount))
Para cada día, sumar el número de veces que se produjo un error en una fase y, a continuación, cerrar la aggregate
cláusula .
Tendencia a errores de tareas
Para ver la tendencia de errores en la tarea, use las siguientes consultas.
Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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/PipelineRunActivityResults?"
&"$apply=filter( "
&"Pipeline/PipelineName eq '{pipelinename}' "
&"and PipelineRunCompletedOn/Date ge {startdate} "
&"and PipelineRunOutcome eq 'Failed' "
&"and TaskOutcome eq 'Failed' "
&") "
&"/groupby( "
&"(PipelineRunCompletedOn/Date, TaskDisplayName), "
&"aggregate "
&"(FailedCount with sum as FailedCount)) "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Tendencia a errores de trabajo
Para ver la tendencia de error inteligente del trabajo, use las siguientes consultas.
Copie y pegue la siguiente consulta de Power BI directamente en la ventana Obtener consulta en blanco de datos>. 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/PipelineRunActivityResults?"
&"$apply=filter( "
&"Pipeline/PipelineName eq '{pipelinename}' "
&"and PipelineRunCompletedOn/Date ge {startdate} "
&"and PipelineRunOutcome eq 'Failed' "
&"and TaskOutcome eq 'Failed' "
&") "
&"/groupby( "
&"(PipelineRunCompletedOn/Date, PipelineRunId, PipelineJob/JobName ), "
&"aggregate (FailedCount with sum as FailedCount)) "
&"/groupby( "
&"(PipelineRunCompletedOn/Date, PipelineJob/JobName ), "
&"aggregate "
&"(cast(FailedCount gt 0, Edm.Int32) with sum as FailedJobCount)) "
,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. Simplemente escriba un nuevo nombre en el panel Configuración de consulta.
Expandir columnas en Editor de Power Query
Antes de crear el informe, deberá expandir las dos columnas siguientes. Para obtener información sobre cómo expandir elementos de trabajo, consulte Transformación de datos de Análisis para generar informes de Power BI.
- Expandir
PipelineJob
aPipelineJob.StageName
- Expandir
PipelineRunCompletedOn
aPipelineRunCompletedOn.Date
Cambio del tipo de datos de columna
En el menú Transformar , cambie el tipo de datos de la FailedStageCount
columna a Número entero. Para obtener información sobre cómo hacerlo, consulte Transformación de un tipo de datos de columna.
(Opcional) Cambiar el nombre de los campos de columna
Puede cambiar el nombre de los campos de columna a los que sean más fáciles de usar. Por ejemplo, puede cambiar el nombre de la columna Pipeline.PipelineName
a Pipeline Name
o TotalCount
a Total Count
. Para obtener información sobre cómo hacerlo, consulte Cambiar el nombre de los campos de columna.
Cierre la consulta y aplique los cambios
Una vez que haya completado todas las transformaciones de datos, elija Cerrar y aplicar en el menú Inicio para guardar la consulta y volver a la pestaña Informe en Power BI.
Creación del informe de gráfico de columnas apiladas
En Power BI, en Visualizaciones, elija el informe gráfico de columnas apiladas. En el ejemplo siguiente se supone que nadie ha cambiado el nombre de ninguna columna.
Agregue
PipelineRunCompletedOn.Date
al eje X, haga clic con el botón derecho en él y seleccione PipelineRunCompletedOn.Date, en lugar de Jerarquía de fechas.Agregue
FailedStagedCount
al eje Y, haga clic con el botón derecho en él y asegúrese de que suma está seleccionada.Agregue
PipelineJob.StageName
a Leyenda.Para cambiar el título del informe, la leyenda u otros objetos visuales de informe, seleccione el icono Formato del pincel de pintura visual en el panel Visualizaciones y ajuste una o varias opciones de configuración.
El informe debe tener un aspecto similar al de la imagen siguiente.