Voorbeeldrapport van trend van pijplijnduur
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
In dit artikel leest u hoe u een rapport maakt dat laat zien hoe lang het duurt voordat uw pijplijn is voltooid. De dagelijkse trend van het rapport pijplijnduur is vergelijkbaar met het trenddiagram pijplijnsnelheid van het rapport Pijplijndoorgang.
In de volgende afbeelding ziet u een voorbeeld van een trendrapport voor de duur.
Belangrijk
Power BI-integratie en -toegang tot de OData-feed van de Analytics-service zijn algemeen beschikbaar voor Azure DevOps Services en Azure DevOps Server 2020 en latere versies. De voorbeeldquery's in dit artikel zijn alleen geldig voor Azure DevOps Server 2020 en latere versies en zijn afhankelijk van versie v3.0 of hoger. We raden u aan deze query's te gebruiken en ons feedback te geven.
Vereisten
- Toegang: Wees lid van een project met ten minste basistoegang .
- Machtigingen: projectleden zijn standaard gemachtigd om query's uit te voeren op Analytics en weergaven te maken.
- Zie Machtigingen en vereisten voor toegang tot Analyse voor meer informatie over andere vereisten met betrekking tot het inschakelen van services en functies en algemene activiteiten voor het bijhouden van gegevens.
Notitie
In dit artikel wordt ervan uitgegaan dat u overzicht van voorbeeldrapporten leest met behulp van OData-query's en basiskennis hebt van Power BI.
Voorbeeldquery's
U kunt de volgende query's van de PipelineRuns
entiteitset gebruiken om verschillende maar vergelijkbare trendrapporten voor pijplijnduur te maken.
Notitie
Als u de beschikbare eigenschappen voor filter- of rapportdoeleinden wilt bepalen, raadpleegt u de naslaginformatie over metagegevens voor Azure Pipelines. U kunt uw query's filteren of eigenschappen retourneren met behulp van een van de Property
waarden onder een EntityType
of NavigationPropertyBinding Path
waarden die beschikbaar zijn met een EntitySet
. Elk EntitySet
komt overeen met een EntityType
. Raadpleeg voor meer informatie over het gegevenstype van elke waarde de metagegevens die voor de bijbehorende EntityType
waarde zijn opgegeven.
Trend van 80e percentielduur ophalen voor een opgegeven pijplijn
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
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 (SucceededCount eq 1 or PartiallySucceededCount eq 1) "
&") "
&"/compute( "
&"percentile_cont(TotalDurationSeconds, 0.8,CompletedDateSK) as Duration80thPercentileInSeconds) "
&"/groupby( "
&"(Duration80thPercentileInSeconds, CompletedOn/Date)) "
&"&$orderby=CompletedOn/Date asc "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Uitsplitsing van tekenreeksen en query's vervangen
Vervang de volgende tekenreeksen door uw waarden. Neem geen vierkante haken {} op bij uw vervanging. Als de naam van uw organisatie bijvoorbeeld Fabrikam is, vervangt u door {organization}
Fabrikam
, niet {Fabrikam}
.
{organization}
- Naam van uw organisatie{project}
- De naam van uw teamproject{pipelinename}
- De naam van uw pijplijn. Voorbeeld:Fabrikam hourly build pipeline
{startdate}
- De datum waarop het rapport moet worden gestart. Indeling: JJJJ-MM-DDZ. Voorbeeld:2021-09-01Z
vertegenwoordigt 1 september 2021. Plaats geen aanhalingstekens of vierkante haken en gebruik twee cijfers voor zowel maand als datum.
Uitsplitsing van query's
In de volgende tabel wordt elk deel van de query beschreven.
Queryonderdeel
Beschrijving
$apply=filter(
Begincomponent filter()
.
Pipeline/PipelineName eq '{pipelinename}'
Retourpijplijnuitvoeringen voor de opgegeven pijplijn.
and CompletedDate ge {startdate}
Retourpijplijn wordt uitgevoerd op of na de opgegeven datum.
and (SucceededCount eq 1 or PartiallySucceededCount eq 1)
Alleen de geslaagde of gedeeltelijk geslaagde uitvoeringen retourneren.
)
Sluit filter()
de component.
/compute(
Begincomponent compute()
.
percentile_cont(TotalDurationSeconds, 0.8,CompletedDateSK) as Duration80thPercentileInSeconds)
Bereken het 80e percentiel van de pijplijnduur van alle pijplijnuitvoeringen die voldoen aan de filtercriteria.
/groupby(
Start groupby()
(Duration80thPercentileInSeconds, CompletedOn/Date))
Groepeer op datum van voltooiing van pijplijnuitvoering en berekende 80e percentielpijplijnduur.
&$orderby=CompletedOn/Date asc
Bestel het antwoord op voltooide datum.
Filteren op pijplijn-id in plaats van pijplijnnaam
De naam van pijplijnen kan worden gewijzigd. Gebruik de pijplijn-id in plaats van de naam van de pijplijn om ervoor te zorgen dat de Power BI-rapporten niet worden verbroken wanneer de naam van de pijplijn wordt gewijzigd. U kunt de pijplijn-id verkrijgen via de URL van de pagina pijplijnuitvoeringen.
https://dev.azure.com/{organization}/{project}/_build?definitionId= `{pipelineid}`
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
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 (SucceededCount eq 1 or PartiallySucceededCount eq 1) "
&") "
&"/compute( "
&"percentile_cont(TotalDurationSeconds, 0.8,CompletedDateSK) as Duration80thPercentileInSeconds) "
&"/groupby( "
&"(Duration80thPercentileInSeconds, CompletedOn/Date)) "
&"&$orderby=CompletedOn/Date asc "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
50e en 90e percentiel ophalen, samen met trend van 80e percentielduur
Mogelijk wilt u de duurtrend weergeven die wordt berekend met behulp van een andere percentielwaarde. De volgende query's bieden de duur van de pijplijn van het 50e en 90e percentiel, samen met het 80e percentiel.
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
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 (SucceededCount eq 1 or PartiallySucceededCount eq 1) "
&") "
&"/compute( "
&"percentile_cont(TotalDurationSeconds, 0.5,CompletedDateSK) as Duration50thPercentileInSeconds, "
&"percentile_cont(TotalDurationSeconds, 0.8,CompletedDateSK) as Duration80thPercentileInSeconds, "
&"percentile_cont(TotalDurationSeconds, 0.90,CompletedDateSK) as Duration90thPercentileInSeconds) "
&"/groupby( "
&"(Duration50thPercentileInSeconds, Duration80thPercentileInSeconds, Duration90thPercentileInSeconds, CompletedOn/Date)) "
&"&$orderby=CompletedOn/Date asc "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Filteren op vertakking
Gebruik de volgende query's om de duurtrend van een pijplijn voor een bepaalde vertakking te bekijken. Als u het rapport wilt maken, voert u de volgende extra stappen uit, samen met wat wordt beschreven in het gegevenstype Kolom wijzigen en de secties Rapport lijndiagram maken.
- Uitvouwen
Branch
totBranch.BranchName
. - Selecteer Power BI-visualisatieslicer en voeg deze toe aan
Branch.BranchName
het veld van de slicer. - Selecteer de pijplijn in de slicer waarvoor u de trend van de pijplijnduur wilt zien.
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
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 (SucceededCount eq 1 or PartiallySucceededCount eq 1) "
&") "
&"/compute( "
&"percentile_cont(TotalDurationSeconds, 0.8,BranchSK, CompletedDateSK) as Duration80thPercentileInSeconds) "
&"/groupby( "
&"(Duration80thPercentileInSeconds, Branch/BranchName, CompletedOn/Date)) "
&"&$orderby=CompletedOn/Date asc "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Duurtrend voor alle projectpijplijnen
U kunt de duurtrend voor alle pijplijnen van het project in één rapport bekijken. Als u het rapport wilt maken, voert u de volgende extra stappen uit, samen met wat wordt beschreven in het gegevenstype Kolom wijzigen en de secties Rapport lijndiagram maken.
- Uitvouwen
Pipeline
totPipeline.PipelineName
. - Selecteer Slicer in het deelvenster Visualisaties en voeg de
Pipeline.PipelineNam
slicer toe aan het veld van de slicer. - Selecteer de pijplijn in de slicer waarvoor u de trend van de doorvoersnelheid van de pijplijn wilt zien.
Kopieer en plak de volgende Power BI-query rechtstreeks in het venster Lege query ophalen>. Zie Overzicht van voorbeeldrapporten met behulp van OData-query's voor meer informatie.
let
Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/PipelineRuns?"
&"$apply=filter( "
&"CompletedDate ge {startdate} "
&"and (SucceededCount eq 1 or PartiallySucceededCount eq 1) "
&") "
&"/compute( "
&"percentile_cont(TotalDurationSeconds, 0.8,PipelineId, CompletedDateSK) as Duration80thPercentileInSeconds) "
&"/groupby( "
&"(Duration80thPercentileInSeconds, Pipeline/PipelineName, CompletedOn/Date)) "
&"&$orderby=CompletedOn/Date asc "
,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4])
in
Source
Kolommen uitvouwen in Power Query-editor
Voordat u het rapport maakt, moet u kolommen uitvouwen die records met verschillende velden retourneren. In dit geval wilt u de kolom uitbreiden om deze CompletedOn
plat CompletedOn.Date
te maken.
Zie Transform Analytics-gegevens voor het genereren van Power BI-rapporten voor meer informatie over het uitvouwen van werkitems.
Kolomgegevenstype wijzigen
Wijzig in het menu Transformeren het gegevenstype voor het Duration80thPercentileInSeconds
decimaal getal. Zie Een kolomgegevenstype transformeren voor meer informatie.
(Optioneel) Kolomvelden een andere naam geven
U kunt de naam van kolomvelden wijzigen. U kunt bijvoorbeeld de naam van de kolom Pipeline.PipelineName
wijzigen in Pipeline Name
, of TotalCount
in Total Count
. Zie Kolomvelden een andere naam geven.
Sluit de query en pas uw wijzigingen toe
Zodra u al uw gegevenstransformaties hebt voltooid, kiest u Sluiten en toepassen in het menu Start om de query op te slaan en terug te keren naar het tabblad Rapport in Power BI.
Het rapport Lijndiagram maken
Kies in Power BI onder Visualisaties het rapport Lijndiagram .
Voeg deze
CompletedOn.Date
toe aan de X-as, klik er met de rechtermuisknop op en selecteer CompletedOn.Date in plaats van Datumhiërarchie.Klik
Duration80thPercentileInSeconds
met de rechtermuisknop op de Y-as en zorg ervoor dat Som is geselecteerd.
Het weergegeven rapport moet er ongeveer uitzien als in de volgende afbeelding.