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


Folyamat időtartamának mintajelentése

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

Ez a cikk bemutatja, hogyan szerezheti be a folyamat időtartamát vagy a folyamat futtatásához szükséges időt. Ez a jelentés hasonló a Folyamat időtartamának jelentés "Folyamat időtartama" diagramjának időtartam-összefoglaló metrikáihoz.

Az alábbi képen egy adott folyamat időtartamjelentése látható 2022 szeptembere és 2022. december 15. között.

Képernyőkép a Power BI-folyamatok időtartamának fürtözött oszlop jelenté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ó folyamat-időtartamú jelenté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.

Percentilis időtartamok visszaadása egy adott folyamathoz

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) as Duration50thPercentileInSeconds, "
                &"percentile_cont(TotalDurationSeconds, 0.8) as Duration80thPercentileInSeconds, "
                &"percentile_cont(TotalDurationSeconds, 0.95) as Duration95thPercentileInSeconds) "
            &"/groupby( "
                &"(Duration50thPercentileInSeconds, Duration80thPercentileInSeconds,Duration95thPercentileInSeconds)) "
    ,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.5) as Duration50thPercentileInSeconds,

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

percentile_cont(TotalDurationSeconds, 0.8) as Duration80thPercentileInSeconds,

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

percentile_cont(TotalDurationSeconds, 0.95) as Duration95thPercentileInSeconds)

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

/groupby(

Start groupby() záradék.

(Duration50thPercentileInSeconds, Duration80thPercentileInSeconds,Duration95thPercentileInSeconds))

Csoportosítsa a választ a záradék szerint Duration50thPercentileInSeconds, Duration80thPercentileInSecondsmajd Duration95thPercentileInSeconds fejezd be groupby .

Percentilis időtartamok visszaadása egy megadott folyamatazonosítóhoz

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.5) as Duration50thPercentileInSeconds, "
                &"percentile_cont(TotalDurationSeconds, 0.8) as Duration80thPercentileInSeconds, "
                &"percentile_cont(TotalDurationSeconds, 0.95) as Duration95thPercentileInSeconds) "
            &"/groupby( "
                &"(Duration50thPercentileInSeconds, Duration80thPercentileInSeconds,Duration95thPercentileInSeconds)) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Percentilis időtartamok visszaadása egy adott folyamathoz, szűrés ág szerint

Ha csak egy adott ághoz szeretné megtekinteni egy folyamat időtartamát, használja az alábbi lekérdezéseket. A jelentés létrehozásához végezze el az alábbi további lépéseket az oszlop adattípusának módosítása és a Fürtözött oszlopdiagram jelentésszakaszok létrehozása című szakaszban leírtakkal együtt.

  • Bontsa ki Branch a .Branch.BranchName
  • Adja hozzá a Branch.BranchName mezőt az X tengelyhez.

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, BranchSK) as Duration50thPercentileInSeconds, "
                &"percentile_cont(TotalDurationSeconds, 0.8, BranchSK) as Duration80thPercentileInSeconds, "
                &"percentile_cont(TotalDurationSeconds, 0.95, BranchSK) as Duration95thPercentileInSeconds) "
            &"/groupby( "
                &"(Duration50thPercentileInSeconds, Duration80thPercentileInSeconds,Duration95thPercentileInSeconds, Branch/BranchName)) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Percentilis időtartamok visszaadása az összes projektfolyamathoz

Ha egyetlen jelentésben szeretné megtekinteni a projekt összes folyamatának időtartamát, használja az alábbi lekérdezéseket. A jelentés létrehozásához végezze el az alábbi további lépéseket az oszlop adattípusának módosítása és a Fürtözött oszlopdiagram jelentésszakaszok létrehozása című szakaszban leírtakkal együtt.

  • Bontsa ki Pipeline a .Pipeline.PipelineName
  • Adja hozzá a PIpeline.PipelineName mezőt az X tengelyhez.

A mintajelentés összes folyamatának eredményösszesítését is megtekintheti, amely az itt leírtaknak megfelelően részletes hasonló lépéseket tartalmaz.

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.5, PipelineId) as Duration50thPercentileInSeconds, "
            &"percentile_cont(TotalDurationSeconds, 0.8, PipelineId) as Duration80thPercentileInSeconds, "
                &"percentile_cont(TotalDurationSeconds, 0.95, PipelineId) as Duration95thPercentileInSeconds) "
                &"/groupby( "
            &"(Duration50thPercentileInSeconds, Duration80thPercentileInSeconds,Duration95thPercentileInSeconds, Pipeline/PipelineName)) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

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

Az Átalakítás menüben módosítsa a következő oszlopok adattípusát Tizedes törtre. A cikkből megtudhatja, hogyan alakíthatja át az oszlop adattípusát.

  • Duration50thPercentileInSeconds
  • Duration80thPercentileInSeconds
  • Duration95thPercentileInSeconds

(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.

Fürtözött oszlopdiagram-jelentés létrehozása

  1. A Power BI Vizualizációk csoportjában válassza a Csoportosított oszlopdiagram jelentést. A példa azt feltételezi, hogy nem lettek átnevezve oszlopok.

    Képernyőkép a Power BI Pipelines fürtözött oszlopvizualizációiról és mezőkijelölésekről.

  2. Adja hozzá a következő mezőket az Y tengelyhez, kattintson a jobb gombbal az egyes mezőkre, és győződjön meg arról, hogy az Összeg ki van jelölve.

    • Duration50thPercentileInSeconds
    • Duration80thPercentileInSeconds
    • Duration95thPercentileInSeconds
  3. A jelentés címének, jelmagyarázatának vagy más jelentésvizualizációinak módosításához válassza a Vizualizációk panelen a Vizualizációk panelen a Vizualizációk panelen a Vizualizációk ecset formázása ikont, és módosítsa egy vagy több beállítást.

A jelentésnek az alábbi képhez hasonlóan kell megjelennie.

Képernyőkép a Power BI-mintafolyamatok időtartamának fürtözött oszlop jelentéséről.