Sdílet prostřednictvím


Dotazování na data trendu

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

Zkoumání trendů v datech a meziobdobní porovnání jsou důležitými aspekty tvorby sestav a datové analýzy. Analýzy tyto funkce podporují.

Poznámka

Služba Analytics je automaticky povolená a podporovaná v produkčním prostředí pro všechny služby Azure DevOps Services. Integrace Power BI a přístup k datovému kanálu OData služby Analytics jsou nyní všeobecně dostupné. Doporučujeme, abyste ho používali a poskytli nám zpětnou vazbu. Dostupná data jsou závislá na verzi. Nejnovější podporovaná verze je v2.0a nejnovější verze Preview je v4.0-preview. Další informace najdete v tématu verzování rozhraní OData API.

Poznámka

Služba Analytics se automaticky nainstaluje a podporuje v produkčním prostředí pro všechny nové kolekce projektů pro Azure DevOps Server 2020 a novější verze. Integrace Power BI a přístup ke službě Analytics pomocí datového kanálu OData jsou obecně dostupné. Doporučujeme, abyste ho používali a poskytli nám zpětnou vazbu. Pokud jste upgradovali z Azure DevOps Serveru 2019, můžete během upgradu nainstalovat službu Analytics.

Dostupná data jsou závislá na verzi. Nejnovější podporovaná verze je v2.0a nejnovější verze Preview je v4.0-preview. Další informace najdete v tématu verzování rozhraní OData API.

Poznámka

Služba Analytics je ve verzi Preview pro Azure DevOps Server 2019. Můžete povolit nebo nainstalovat pro kolekci projektů. integrace Power BI a přístup k datovému kanálu OData služby Analytics jsou ve fázi náhledu. Doporučujeme, abyste ho používali a poskytli nám zpětnou vazbu.

Dostupná data jsou závislá na verzi. Nejnovější podporovaná verze je v2.0a nejnovější verze Preview je v4.0-preview. Další informace najdete v tématu verzování OData API.

Data trendu se zveřejňují v sadách entit WorkItemSnapshot a WorkItemBoardSnapshot. Jsou vytvořeny tak, aby každá pracovní úloha od doby svého vytvoření až do dneška byla přítomna každý den. Pro organizaci s pouze jednou pracovní položkou, která byla vytvořena před rokem, je v této entitě 365 řádků. U velkých projektů by tyto entity byly nepraktické pro použití s klientskými nástroji.

Co je řešení? Použijte rozšíření agregace .

Pomocí rozšíření agregace OData můžete vracet agregovaná data z Azure DevOps, která jsou vhodná pro generování sestav. Můžete například zobrazit trend chyb pro měsíc březen. Trendy chyb jsou běžnou a kritickou součástí správy libovolného projektu, abyste je mohli okamžitě využít.

Poznámka

Příklady uvedené v tomto dokumentu jsou založené na adrese URL služby Azure DevOps Services. Podle potřeby nahraďte adresu URL azure DevOps Serveru.

https://{servername}:{port}/tfs/{OrganizationName}/{ProjectName}/_odata/{version}/

Požadavky

Kategorie Požadavky
úrovně přístupu - člena projektu.
- Alespoň základní přístup.
oprávnění Ve výchozím nastavení mají členové projektu oprávnění pracovat s analýzou a vytvářet zobrazení. Další informace o dalších požadavcích týkajících se povolení služeb a funkcí a obecných aktivit sledování dat najdete v tématu Oprávnění a požadavky pro přístup k analytickým.

Vytvoření základního dotazu pro data trendu

Pokud chcete efektivně dotazovat tabulku WorkItemSnapshot, postupujte podle těchto základních požadavků:

  • Data můžete filtrovat podle data.
  • Seskupte agregaci alespoň podle data. Pokud ne, odpověď obsahuje upozornění.

Dotaz pro vytvoření sestavy trendu chyb vypadá jako v následujícím příkladu:

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

Vrátí výsledek podobný následujícímu příkladu:

{
  "@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
    }
  ]
}

Tento dotaz vytvoří maximálně 31 * (number of bug states). Výchozí chyba má tři stavy:

  • Aktivní
  • Vyřešený
  • Uzavřený

Maximálně tento dotaz vrátí 93 řádků bez ohledu na to, kolik tisíc záznamů skutečně existuje. Poskytuje mnohem kompaktnější formu vracení dat.

Podívejme se na variantu tohoto příkladu. Chcete zobrazit trend chyb pro iteraci nebo verzi, která začíná jednou iterací a končí jinou.

Pokud chcete tento dotaz vytvořit, proveďte následující příklad:

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

Vrátí výsledek podobný následujícímu příkladu:

{
  "@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
    }
  ]
}

V tomto dotazu existují dva klíčové rozdíly. Přidali jsme klauzuli filtru pro filtrování dat do konkrétní iterace a data se teď porovnávají s počátečními a koncovými daty iterace a pevně zakódovaným datem.

Poznámka

Pokud dotaz na tabulky snímků nepoužívá agregaci, zobrazí se v odpovědi upozornění: Zadaný dotaz neobsahuje $select ani $apply klauzuli, která se doporučuje pro všechny dotazy.