Fråga trenddata
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Att undersöka trender i data och göra jämförelser mellan tidsperioder är viktiga aspekter av rapportering och dataanalys. Analytics stöder dessa funktioner.
Not
Analytics-tjänsten aktiveras automatiskt och stöds i produktion för alla Azure DevOps Services.
Power BI-integrering och åtkomst till OData-feed i Analytics Service är allmänt tillgängliga. Vi rekommenderar att du använder den och ger oss feedback.
Tillgängliga data är versionsberoende. Den senaste versionen som stöds är v2.0
och den senaste förhandsversionen är v4.0-preview
. Mer information finns i OData API-versionshantering.
Obs
Analytics-tjänsten installeras automatiskt och stöds i produktion för alla nya projektsamlingar för Azure DevOps Server 2020 och senare versioner. Power BI-integrering och åtkomst till OData-feed i Analytics Service är allmänt tillgängliga. Vi rekommenderar att du använder den och ger oss feedback. Om du har uppgraderat från Azure DevOps Server 2019 kan du installera Analytics-tjänsten under uppgraderingen.
Tillgängliga data är versionsberoende. Den senaste versionen som stöds är v2.0
och den senaste förhandsversionen är v4.0-preview
. Mer information finns i OData API-versionshantering.
Notera
Analytics-tjänsten är en förhandsversion för Azure DevOps Server 2019. Du kan aktivera eller installera för en projektsamling. Power BI-integrering och åtkomst till OData-feeden för Analystjänsten finns i förhandsversion. Vi rekommenderar att du använder den och ger oss feedback.
Tillgängliga data är versionsberoende. Den senaste versionen som stöds är v2.0
och den senaste förhandsversionen är v4.0-preview
. Mer information finns i OData API-versionshantering.
Trenddata exponeras i entitetsuppsättningarna WorkItemSnapshot och WorkItemBoardSnapshot. De är konstruerade så att varje arbetsobjekt, från den dag det skapades till idag, finns för varje dag. För en organisation med endast ett arbetsobjekt som skapades för ett år sedan finns det 365 rader i den här entiteten. För stora projekt skulle dessa entiteter vara opraktiska att använda med klientverktyg.
Vad är lösningen? Använd förlängningarna Aggregation.
Med OData Aggregation Extensions kan du returnera aggregerade data från Azure DevOps som bidrar till rapportering. Du kan till exempel visa buggtrend för mars månad. Buggtrender är en vanlig och viktig del av hanteringen av alla projekt så att du kan använda det på ett bra sätt omedelbart.
Not
Exemplen som visas i det här dokumentet baseras på en URL för Azure DevOps Services. Ersätt url:en för Azure DevOps-servern efter behov.
https://{servername}:{port}/tfs/{OrganizationName}/{ProjectName}/_odata/{version}/
Förutsättningar
Kategori | Krav |
---|---|
Åtkomstnivåer |
-
projektmedlem. – Minst Grundläggande åtkomst. |
behörigheter | Som standard har projektmedlemmar behörighet att fråga Analytics och skapa vyer. Mer information om andra krav för tjänst- och funktionsaktivering och allmänna dataspårningsaktiviteter finns i Behörigheter och krav för åtkomst till Analytics. |
Skapa en grundläggande fråga för trenddata
Följ dessa grundläggande krav för att effektivt köra frågor mot tabellen WorkItemSnapshot:
- Filtrera data efter datum.
- Gruppera aggregeringen efter minst datumet. Annars innehåller svaret en varning.
Frågan för att skapa en rapport om buggtrender ser ut som i följande exempel:
https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/{version}//WorkItemSnapshot?
$apply=
filter(DateValue ge 2016-03-01Z and DateValue le 2016-03-31Z and WorkItemType eq 'Bug')/
groupby((DateValue,State), aggregate($count as Count))
&$orderby=DateValue
Det returnerar ett resultat som liknar följande exempel:
{
"@odata.context": "https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/{version}//$metadata#WorkItemSnapshot(DateValue,State,Count)",
"value": [
{
"@odata.id": null,
"State": "Active",
"DateValue": "2016-03-01T00:00:00-08:00",
"Count": 2666
},
{
"@odata.id": null,
"State": "Closed",
"DateValue": "2016-03-01T00:00:00-08:00",
"Count": 51408
}
]
}
Den här frågan genererar högst 31 * (number of bug states)
. Standardfelet har tre tillstånd:
- Aktiv
- Löst
- Stängd
Högst returnerar den här frågan 93 resultatrader oavsett hur många tusentals poster som faktiskt finns. Det ger en mycket mer kompakt form av att returnera data.
Nu ska vi titta på en variant i det här exemplet. Du vill se buggtrenden för en iteration eller en version som börjar med en iteration och slutar med en annan.
Skapa den frågan genom att göra följande exempel:
https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/{version}//WorkItemSnapshot?
$apply=
filter(WorkItemType eq 'Bug')/
filter(Iteration/IterationName eq 'Sprint 99')/
filter(DateValue ge Iteration/StartDate and (Iteration/EndDate eq null or DateValue le Iteration/EndDate))/
groupby((DateValue, State), aggregate($count as Count))
&$orderby=DateValue
Det returnerar ett resultat som liknar följande exempel:
{
"@odata.context": "https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/{version}//$metadata#WorkItemSnapshot(DateValue,State,Count)",
"value": [
{
"@odata.id": null,
"State": "Active",
"DateValue": "2016-04-04T00:00:00-07:00",
"Count": 320
},
{
"@odata.id": null,
"State": "Closed",
"DateValue": "2016-04-04T00:00:00-07:00",
"Count": 38
}
]
}
I den här frågan finns det två viktiga skillnader. Vi har lagt till en filtersats för att filtrera data till en specifik iteration och datumen jämförs nu med iterationens start- och slutdatum jämfört med ett hårdkodat datum.
Obs.
Om frågan i ögonblicksbildstabeller inte använder aggregering visar svaret varningen: "Den angivna frågan innehåller inte en $select
- eller $apply
-sats som rekommenderas för alla frågor."
Relaterade artiklar
- Skapa aggregerade datafrågor för att räkna och analysera grupper med relaterade data.