Bagikan melalui


Data tren kueri

Layanan Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019

Memeriksa tren dalam data dan membuat perbandingan periode berlebihan adalah aspek penting dari pelaporan dan analisis data. Analitik mendukung kemampuan ini.

Catatan

Layanan Analitik diaktifkan secara otomatis dan didukung dalam produksi untuk semua Layanan Azure DevOps. Integrasi dan akses Power BI ke umpan OData Dari Layanan Analitik umumnya tersedia. Kami mendorong Anda untuk menggunakannya dan memberi kami umpan balik. Data yang tersedia bergantung pada versi. Versi terbaru yang didukung adalah v2.0, dan versi pratinjau terbaru adalah v4.0-preview. Untuk informasi selengkapnya, lihat Penerapan versi OData API.

Catatan

Layanan Analytics secara otomatis diinstal dan didukung dalam produksi untuk semua koleksi proyek baru untuk Azure DevOps Server 2020 dan versi yang lebih baru. Integrasi dan akses Power BI ke umpan OData Dari Layanan Analitik umumnya tersedia. Kami mendorong Anda untuk menggunakannya dan memberi kami umpan balik. Jika Anda meningkatkan dari Azure DevOps Server 2019, maka Anda dapat menginstal layanan Analytics selama peningkatan.

Data yang tersedia bergantung pada versi. Versi terbaru yang didukung adalah v2.0, dan versi pratinjau terbaru adalah v4.0-preview. Untuk informasi selengkapnya, lihat Penerapan versi OData API.

Catatan

Layanan Analitik sedang dalam pratinjau untuk Azure DevOps Server 2019. Anda dapat mengaktifkan atau menginstalnya untuk koleksi proyek. Integrasi dan akses Power BI ke umpan OData Layanan Analitik ada di Pratinjau. Kami mendorong Anda untuk menggunakannya dan memberi kami umpan balik.

Data yang tersedia bergantung pada versi. Versi terbaru yang didukung adalah v2.0, dan versi pratinjau terbaru adalah v4.0-preview. Untuk informasi selengkapnya, lihat Penerapan versi OData API.

Data tren diekspos dalam kumpulan entitas WorkItemSnapshot dan WorkItemBoardSnapshot. Mereka dibangun sehingga setiap item kerja, dari hari itu dibuat sampai hari ini, ada untuk setiap hari. Untuk organisasi dengan hanya satu item kerja yang dibuat setahun yang lalu, ada 365 baris dalam entitas ini. Untuk proyek besar, entitas ini tidak praktis untuk digunakan dengan alat klien.

Apa solusinya? Gunakan Ekstensi Agregasi.

Dalam artikel ini Anda akan mempelajari:

  • Cara membuat kueri dasar untuk data tren

Dengan menggunakan Ekstensi Agregasi OData, Anda dapat mengembalikan data agregat dari Azure DevOps yang kondusif untuk pelaporan. Misalnya, Anda dapat menunjukkan tren bug untuk bulan Maret. Tren bug adalah bagian umum dan kritis dalam mengelola proyek apa pun sehingga Anda dapat segera menggunakannya dengan baik.

Catatan

Contoh yang ditampilkan dalam dokumen ini didasarkan pada URL Layanan Azure DevOps, Anda harus mengganti di URL Server Azure DevOps Anda.

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

Membuat kueri dasar untuk data tren

Ada beberapa persyaratan dasar yang Anda butuhkan untuk mengkueri tabel WorkItemSnapshot secara efektif:

  • Memfilter data menurut tanggal.
  • Agregasi harus dikelompokkan menurut, setidaknya, tanggal. Jika tidak, respons akan memiliki peringatan.

Kueri untuk membuat laporan tren bug terlihat seperti contoh berikut:

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

Ini mengembalikan hasil yang mirip dengan contoh berikut:

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

Kueri ini akan menghasilkan paling banyak 31 * (number of bug states). Bug default memiliki tiga status:

  • Aktif
  • Diselesaikan
  • Tutup

Paling banyak, kueri ini akan mengembalikan 93 baris tidak peduli berapa banyak ribuan rekaman yang benar-benar ada. Ini menyediakan bentuk yang jauh lebih ringkas dari mengembalikan data.

Mari kita lihat variasi pada contoh ini. Anda ingin melihat tren bug untuk iterasi atau rilis yang dimulai dengan satu iterasi dan diakhir dengan yang lain.

Untuk membuat kueri tersebut, lakukan contoh berikut:

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

Ini mengembalikan hasil yang mirip dengan contoh berikut:

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

Dalam kueri ini, ada dua perbedaan utama. Kami menambahkan klausul filter untuk memfilter data ke iterasi tertentu dan tanggal sekarang dibandingkan dengan tanggal mulai dan berakhir perulangan versus tanggal yang dikodekan secara permanen.

Catatan

Jika agregasi tidak digunakan dalam kueri Anda pada tabel rekam jepret, Anda akan melihat peringatan "Kueri yang ditentukan tidak menyertakan klausa $select atau $apply yang direkomendasikan untuk semua kueri." dalam respons.

  • Buat kueri data agregat untuk menghitung dan menganalisis grup data terkait.