Megosztás a következőn keresztül:


Folyamat időtartamának trendmintája – jelentés

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

Ez a cikk bemutatja, hogyan hozhat létre olyan jelentést, amely bemutatja, hogy a folyamat általában mennyi ideig tart a sikeres befejezésig. A folyamathosszúság-jelentés napi trendje hasonló a Folyamatátadási sebesség jelentés Folyamatsebesség trenddiagramhoz.

Az alábbi képen egy időtartam-trendjelentés látható.

Képernyőkép a Power BI-folyamatok időtartamának trendjelentéséről.

Fontos

Az Elemzési szolgáltatás OData-hírcsatornájának Power BI-integrációja és hozzáférése általánosan elérhető az Azure DevOps Serviceshez, valamint az Azure DevOps Server 2020- és újabb verzióihoz. A cikkben szereplő minta lekérdezések csak az Azure DevOps Server 2020 és újabb verzióira érvényesek, és a 3.0-s vagy újabb verziótól függnek. Javasoljuk, hogy használja ezeket a lekérdezéseket, és küldjön nekünk visszajelzést.

Előfeltételek

Feljegyzés

Ez a cikk feltételezi, hogy OData-lekérdezések használatával olvassa el a mintajelentések áttekintését, és alapszintű ismeretekkel rendelkezik a Power BI-ról.

Minta lekérdezések

Az entitáskészlet alábbi lekérdezéseivel PipelineRuns különböző, de hasonló folyamathosszúságú trendjelentéseket hozhat létre.

Feljegyzés

A szűrési vagy jelentéskészítési célokra elérhető tulajdonságok meghatározásához tekintse meg az Azure Pipelines metaadat-referenciáit. Szűrheti a lekérdezéseket, vagy visszaadhatja a tulajdonságokat egy Property adott vagy egy adott értékkel elérhető értékek EntityType NavigationPropertyBinding Path bármelyikével EntitySet. Mindegyik EntitySet egy EntityType. Az egyes értékek adattípusával kapcsolatos további információkért tekintse át a megfelelő EntityTypemetaadatokat.

Egy adott folyamat 80. percentilis időtartamának trendje

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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

Helyettesítési sztringek és lekérdezések lebontása

Cserélje le a következő sztringeket az értékekkel. Ne tartalmazzon szögletes zárójeleket {} a helyettesítéssel. Ha például a szervezet neve "Fabrikam", cserélje le a Fabrikamhelyére {organization} a nem {Fabrikam}.

  • {organization} - A szervezet neve
  • {project} – A csapat projektneve
  • {pipelinename} - A folyamat neve. Példa: Fabrikam hourly build pipeline
  • {startdate} - A jelentés indításának dátuma. Formátum: YYYYY-MM-DDZ. Példa: 2021-09-01Z 2021. szeptember 1. Ne foglaljon össze idézőjeleket vagy szögletes zárójeleket, és használjon két számjegyet mind a hónap, mind a dátum esetében.

Lekérdezések lebontása

Az alábbi táblázat a lekérdezés egyes részeit ismerteti.

Lekérdezési rész

Leírás


$apply=filter(

Start filter() záradék.

Pipeline/PipelineName eq '{pipelinename}'

A megadott folyamat folyamatfuttatásainak visszaadása.

and CompletedDate ge {startdate}

A visszaadott folyamat a megadott dátumon vagy után fut.

and (SucceededCount eq 1 or PartiallySucceededCount eq 1)

Csak a sikeres vagy részben sikeres futtatásokat adja vissza.

)

Zárja be filter() a záradékot.

/compute(

Start compute() záradék.

percentile_cont(TotalDurationSeconds, 0.8,CompletedDateSK) as Duration80thPercentileInSeconds)

A szűrési feltételeknek megfelelő összes folyamatfuttatás folyamatidejének 80. percentilisének kiszámítása.

/groupby(

A groupby() indítása

(Duration80thPercentileInSeconds, CompletedOn/Date))

Csoportosítsa a folyamatfuttatás befejezésének dátuma és a számított nap szerint a 80. percentilis folyamat időtartamát.

&$orderby=CompletedOn/Date asc

A válasz megrendelése befejezett dátum szerint.

Szűrés folyamatazonosító szerint a folyamat neve helyett

A folyamatok átnevezhetők. Annak érdekében, hogy a Power BI-jelentések ne szakadjanak meg a folyamatnév módosításakor, használja a folyamatazonosítót a folyamat neve helyett. A folyamatazonosítót a folyamatfuttatási oldal URL-címéről szerezheti be.

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

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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

Az 50. és a 90. percentilis, valamint a 80. percentilis időtartam trendje

Előfordulhat, hogy meg szeretné tekinteni a más percentilisértékkel kiszámított időtartam-trendet. Az alábbi lekérdezések az 50. és a 90. percentilis folyamat időtartamát, valamint a 80. percentilist biztosítják.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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

Szűrés ág szerint

Ha csak egy adott ághoz szeretné megtekinteni egy folyamat időtartam-trendet, használja az alábbi lekérdezéseket. A jelentés létrehozásához hajtsa végre az alábbi további lépéseket, valamint az oszlop adattípusának módosítása és a Vonaldiagram jelentésszakaszok létrehozása című szakaszt.

  • Bontsa ki Branch a .Branch.BranchName
  • Válassza a Power BI vizualizációs szeletelőt , és adja hozzá Branch.BranchName a szeletelő mezőjéhez.
  • Válassza ki azt a folyamatot a szeletelőből, amelyhez látnia kell a folyamat időtartamának trendét.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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

Az összes projektfolyamat időtartam-trendje

Előfordulhat, hogy egyetlen jelentésben szeretné megtekinteni a projekt összes folyamatának időtartam-trendét. A jelentés létrehozásához hajtsa végre az alábbi további lépéseket, valamint az oszlop adattípusának módosítása és a Vonaldiagram jelentésszakaszok létrehozása című szakaszt.

  • Bontsa ki Pipeline a .Pipeline.PipelineName
  • Válassza a Szeletelő lehetőséget a Vizualizációk panelen, és adja hozzá a Pipeline.PipelineNam szeletelő mezőjéhez.
  • Válassza ki azt a folyamatot a szeletelőből, amelyhez látnia kell a folyamatátadási sebesség trendét.

Másolja és illessze be közvetlenül az alábbi Power BI-lekérdezést az Üres adat>lekérdezés lekérése ablakba. További információ: OData-lekérdezéseket használó mintajelentések áttekintése.

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

Oszlopok kibontása Power Query-szerkesztő

A jelentés létrehozása előtt ki kell bontania azokat az oszlopokat, amelyek több mezőt tartalmazó rekordokat ad vissza. Ebben a példában ki kell bontani az CompletedOn oszlopot, hogy az összesimuljon CompletedOn.Date.
A munkaelemek kibontásával kapcsolatos további információkért tekintse meg a Power BI-jelentések létrehozásához használható Transform Analytics-adatokat.

Oszlop adattípusának módosítása

Az Átalakítás menüben módosítsa a tizedes tört adattípusátDuration80thPercentileInSeconds. A cikkből megtudhatja, hogyan alakíthatja át az oszlop adattípusát.

(Nem kötelező) Oszlopmezők átnevezése

Átnevezheti az oszlopmezőket. Átnevezheti például az oszlopot Pipeline.PipelineName Pipeline Namea következőre: vagy TotalCount .Total Count További információ: Oszlopmezők átnevezése.

Zárja be a lekérdezést, és alkalmazza a módosításokat

Miután elvégezte az összes adatátalakítást, válassza a Kezdőlap menü Bezárás &alkalmaz elemét a lekérdezés mentéséhez és a Power BI Jelentés lapjára való visszatéréshez.

Képernyőkép a Power Query-szerkesztő Bezárás és alkalmazás lehetőségről.

A Vonaldiagram jelentés létrehozása

  1. A Power BI Vizualizációk területén válassza a Vonaldiagram jelentést.

    Képernyőkép a folyamatok vizualizációs mezőinek kiválasztásáról, amely az időtartam trendjelentését futtatja.

  2. Adja hozzá CompletedOn.Date az X tengelyhez, kattintson rá a jobb gombbal, és válassza a CompletedOn.Date lehetőséget a Dátumhierarchia helyett.

  3. Kattintson Duration80thPercentileInSeconds rá a jobb gombbal az Y tengelyhez, és győződjön meg arról, hogy az Összeg ki van jelölve.

A megjelenített jelentésnek az alábbi képhez hasonlóan kell kinéznie.

Képernyőkép a Power BI-mintafolyamatok időtartamának trendjelentéséről.