Folyamattevékenység időtartamának mintajelentése
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
Mennyi ideig tart a különböző feladatok végrehajtása? Ez a cikk azokat a lekérdezéseket ismerteti, amelyekből jelentést hozhat létre egy adott folyamathoz és annak tevékenységeihez. Az alábbi képen például az 50., a 80. és a 95. percentilis látható másodpercben az adott folyamathoz 2022. szeptember 1. és december 15. között befejezett összes tevékenységhez.
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
- Hozzáférés: Legyen legalább alapszintű hozzáféréssel rendelkező projekt tagja.
- Engedélyek: Alapértelmezés szerint a projekttagok jogosultak az Analytics lekérdezésére és nézetek létrehozására.
- A szolgáltatás- és szolgáltatás-engedélyezéssel, valamint az általános adatkövetési tevékenységekkel kapcsolatos egyéb előfeltételekről további információt az Analytics eléréséhez szükséges engedélyek és előfeltételek című témakörben talál.
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ást úgy PipelineRunActivityResults?
kérdezi le, hogy a tevékenység időtartamára vonatkozó adatokat adja vissza.
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ő EntityType
metaadatokat.
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/PipelineRunActivityResults?"
&"$apply=filter( "
&"Pipeline/PipelineName eq '{pipelinename}' "
&"and PipelineRunCompletedOn/Date ge {startdate} "
&"and (PipelineRunOutcome eq 'Succeed' or PipelineRunOutcome eq 'PartiallySucceeded') "
&"and (CanceledCount ne 1 and SkippedCount ne 1 and AbandonedCount ne 1) "
&") "
&"/compute( "
&"percentile_cont(ActivityDurationSeconds, 0.5, TaskDisplayName) as TaskDuration50thPercentileInSeconds, "
&"percentile_cont(ActivityDurationSeconds, 0.8, TaskDisplayName) as TaskDuration80thPercentileInSeconds, "
&"percentile_cont(ActivityDurationSeconds, 0.95, TaskDisplayName) as TaskDuration95thPercentileInSeconds) "
&"/groupby( "
&"(TaskDuration50thPercentileInSeconds, TaskDuration80thPercentileInSeconds,TaskDuration95thPercentileInSeconds, TaskDisplayName)) "
&"&$orderby=TaskDuration50thPercentileInSeconds desc "
,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 Fabrikam
helyé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 PipelineRunCompletedOn/Date ge {startdate}
A megadott dátumon vagy után futó folyamat tevékenységeredményeinek visszaadása.
and (PipelineRunOutcome eq 'Succeed' or PipelineRunOutcome eq 'PartiallySucceeded')
Csak a sikeres vagy részlegesen sikeres folyamatfuttatások tevékenységeredményét adja vissza.
and (CanceledCount ne 1 and SkippedCount ne 1 and AbandonedCount ne 1)
Kihagyhatja a megszakított, kihagyott vagy elhagyott folyamatfuttatásokat.
)
Zárja be a záradékot filter()
.
/compute(
Start compute()
záradék.
percentile_cont(ActivityDurationSeconds, 0.5, TaskDisplayName) as TaskDuration50thPercentileInSeconds,
Minden tevékenységhez számítsa ki a tevékenység időtartamának 50. percentilisét minden olyan tevékenységhez, amely megfelel a szűrési feltételeknek.
percentile_cont(ActivityDurationSeconds, 0.8, TaskDisplayName) as TaskDuration80thPercentileInSeconds,
Minden tevékenységhez számítsa ki a tevékenység időtartamának 80. percentilisét minden olyan tevékenységhez, amely megfelel a szűrési feltételeknek.
percentile_cont(ActivityDurationSeconds, 0.95, TaskDisplayName) as TaskDuration95thPercentileInSeconds)
Minden tevékenységhez számítsa ki a tevékenység időtartamának 95. percentilisét minden olyan tevékenységhez, amely megfelel a szűrési feltételeknek.
/groupby(
Indítsa el a záradékot groupby()
.
(TaskDuration50thPercentileInSeconds, TaskDuration80thPercentileInSeconds,TaskDuration95thPercentileInSeconds, TaskDisplayName))
A folyamatfuttatás és a számított nap szerinti csoportosítás az 50. percentilis tevékenység időtartamával, a 80. percentilis tevékenység időtartamával és a 95. percentilis tevékenység időtartamával.
&$orderby=TaskDuration50thPercentileInSeconds desc
A választ a legmagasabb 50. percentilis időtartamú tevékenységek szerint rendezheti.
(Nem kötelező) Lekérdezés átnevezése
Az alapértelmezett lekérdezéscímkét (Query1) átnevezheti valami értelmesebbre. Egyszerűen adjon meg egy új nevet a Lekérdezés beállításai panelen.
Oszlop adattípusának módosítása
Az Átalakítás menüben módosítsa az alábbi oszlopok adattípusát. Ennek módjáról Decimal Number**.
további információt az Oszlop adattípus átalakítása című témakörben talál.
- TaskDuration80thPercentileInSeconds
- TaskDuration80thPercentileInSeconds
- TaskDuration95thPercentileInSeconds
.
(Nem kötelező) Oszlopmezők átnevezése
Átnevezheti az oszlopmezőket. Átnevezheti például a következő oszlopokat, hogy megjeleníthetőbbek legyenek. További információ: Oszlopmezők átnevezése.
Eredeti mezőnév | Átnevezett mező |
---|---|
TaskDisplayName |
Feladatnév |
TaskDuration50thPercentileInSeconds |
50. percentilis |
TaskDuration80thPercentileInSeconds |
80. percentilis |
TaskDuration95thPercentileInSeconds |
95. percentilis |
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.
A Tábla jelentés létrehozása
A Power BI Vizualizációk területén válassza a Tábla jelentést. A mezők az Oszlopmezők átnevezése szakaszban megadottak szerint lettek átnevezve.
Adja hozzá a következő mezőket az oszlopokhoz a megadott sorrendben.
- Tevékenység neve
- 50. percentilis
- 80. percentilis
- 95. percentilis
A jelentés címének módosításához válassza a Vizualizációk panelen a Vizualizációk panelen a vizualizációk ecsetének formázása ikont, válassza az Általános lehetőséget, bontsa ki a Cím elemet, és cserélje le a meglévő szöveget.
Az alábbi képen az eredményként kapott jelentés egy része látható.