共用方式為


管線結果摘要範例報告

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

管線執行代表管線的單一執行。 在執行期間,會處理管線,而代理程式會處理一或多個作業。 結果包括成功、失敗、已取消和部分成功 若要建立顯示管線執行結果的報表,您可以查詢 ''PipelineRuns entity set

本文提供數個查詢和指示,說明如何建立報表,以取得不同管線結果的執行次數。

下圖顯示結果摘要報表的範例。

Power BI 管線結果摘要報告的螢幕快照。

重要

Azure DevOps Services 和 Azure DevOps Server 2020 和更新版本的 Power BI 整合 和存取 Analytics Service 的 OData 摘要 已正式推出。 本文中提供的範例查詢僅適用於 Azure DevOps Server 2020 和更新版本,且相依於 v3.0-preview 或更新版本。 我們鼓勵您使用這些查詢並提供意見反應。

必要條件

  • 存取:至少是具有基本存取權的項目成員。
  • 許可權: 根據預設,項目成員具有查詢分析及建立檢視的許可權。
  • 如需有關服務與功能啟用和一般數據追蹤活動之其他必要條件的詳細資訊,請參閱 存取分析的許可權和必要條件。

注意

本文假設您已閱讀 使用 OData 查詢 的範例報表概觀,並具備 Power BI 的基本瞭解。

範例查詢

您可以使用實體集的 PipelineRuns 下列查詢來建立不同但類似的管線結果摘要報告。

注意

若要判斷篩選或報表用途的可用屬性,請參閱 Azure Pipelines 的元數據參考。 您可以使用的 或 NavigationPropertyBinding PathEntitySet底下EntityType的任何Property值來篩選查詢或傳回屬性。 每個 EntitySet 對應至 EntityType。 如需每個值之數據類型的詳細資訊,請檢閱針對對應 EntityType提供的元數據。

具名管線的管線持續時間

下列查詢會從指定的開始日期傳回特定管線的管線執行。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

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} "
                &") "
        &"/aggregate( "
        &"$count as TotalCount, "
            &"SucceededCount with sum as SucceededCount , "
                &"FailedCount with sum as FailedCount, "
                &"PartiallySucceededCount with sum as PartiallySucceededCount , "
            &"CanceledCount with sum as CanceledCount "
                &") "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

替代字串和查詢明細

以您的值取代下列字串。 請勿在替代中包含括號 {} 。 例如,如果您的組織名稱為 「Fabrikam」 ,請將 取代 {organization}Fabrikam,而非 {Fabrikam}

  • {organization} - 您的組織名稱
  • {project} - 您的小組項目名稱
  • {pipelinename} - 您的管線名稱。 範例: Fabrikam hourly build pipeline
  • {startdate} - 開始報表的日期。 格式:YYYY-MM-DDZ。 範例: 2021-09-01Z 代表 2021 年 9 月 1 日。 請勿以引號或括弧括住,並針對月份和日期使用兩位數。

查詢明細

下表描述查詢的每個部分。

查詢元件

說明


$apply=filter(

Start filter() 子句。

Pipeline/PipelineName eq '{pipelinename}'

傳回指定管線的管線執行。

and CompletedDate ge {startdate}

傳回管線會在指定的日期或之後執行。

)

Close filter() 子句

/aggregate(

符合篩選準則的所有管線執行的 Start aggregate 子句。

$count as TotalCount,

將執行總數計算為 TotalCount

SucceededCount with sum as SucceededCount ,

將成功執行的數目計算為 SucceededCount

FailedCount with sum as FailedCount,

將失敗的執行數目計算為 FailedCount

PartiallySucceededCount with sum as PartiallySucceededCount ,

將部分成功執行的數目計算為 PartiallySucceededCount

CanceledCount with sum as CanceledCount

將取消的執行數目計算為 CanceledCount

)

Close aggregate() 子句。

特定管線標識碼的管線執行結果摘要

管線可以重新命名。 若要確保Power BI報表不會在變更管線名稱時中斷,請使用管線標識碼,而不是其名稱。 您可以從管線執行頁面的 URL 取得管線識別碼。

https://dev.azure.com/{organization}/{project}/_build?definitionId={pipelineid}

下列查詢會傳回特定管線標識碼的管線執行,以及從指定的開始日期執行。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

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} "
                &") "
        &"/aggregate( "
        &"$count as TotalCount, "
            &"SucceededCount with sum as SucceededCount , "
                &"FailedCount with sum as FailedCount, "
                &"PartiallySucceededCount with sum as PartiallySucceededCount , "
            &"CanceledCount with sum as CanceledCount "
                &") "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

依分支篩選的管線執行結果摘要

若要檢視特定分支管線的結果摘要,請使用下列查詢。 若要建立報表,請執行下列步驟:

  • 展開 BranchBranch.BranchName
  • 變更數據行數據類型
  • 建立環圈圖報表
  • 從 [視覺效果] 窗格中選取交叉分析篩選器,並將 新增Branch.BranchName至交叉分析篩選器的欄位
  • 從交叉分析篩選器中選取需要查看結果摘要的分支。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

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} "
                &") "
        &"/groupby( "
        &"(Branch/BranchName), "
            &"aggregate( "
                &"$count as TotalCount, "
                &"SucceededCount with sum as SucceededCount , "
            &"FailedCount with sum as FailedCount, "
                &"PartiallySucceededCount with sum as PartiallySucceededCount , "
            &"CanceledCount with sum as CanceledCount "
        &")) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

依建置原因篩選的管線執行結果摘要

您可能只想要檢視管線的結果摘要,原因只有特定的 建置原因 (手動/BatchedCI、提取要求等等)。 若要建立報表,請執行下列步驟:

  • 變更數據行數據類型
  • 建立環圈圖報表
  • 從 [視覺效果] 窗格中選取交叉分析篩選器,並將 新增Pipeline.PipelineName至交叉分析篩選器的欄位
  • 從交叉分析篩選器中選取管線,您需要查看結果摘要。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

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} "
                &") "
        &"/groupby( "
        &"(RunReason), "
            &"aggregate( "
                &"$count as TotalCount, "
                &"SucceededCount with sum as SucceededCount , "
            &"FailedCount with sum as FailedCount, "
                &"PartiallySucceededCount with sum as PartiallySucceededCount , "
            &"CanceledCount with sum as CanceledCount "
        &")) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

所有專案管線的結果摘要

您可能想要檢視單一報表中所有專案管線的管線結果摘要。 若要建立報表,請執行下列步驟:

  • 展開 PipelinePipeline.PipelineName
  • 變更數據行數據類型
  • 建立環圈圖報表
  • 從 [視覺效果] 窗格中選取交叉分析篩選器,並將 新增Pipeline.PipelineName至交叉分析篩選器的欄位
  • 從交叉分析篩選器中選取管線,您需要查看結果摘要。

如需詳細步驟,另 請參閱所有管線 範例報表的結果摘要。

將下列 Power BI 查詢直接複製並貼到 [取得資料>空白查詢] 視窗中。 如需詳細資訊,請參閱 使用 OData 查詢的範例報表概觀

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/PipelineRuns?"
        &"$apply=filter( "
                &"CompletedDate ge {startdate} "
                &") "
                &"/groupby( "
        &"(Pipeline/PipelineName), "
        &"aggregate( "
            &"$count as TotalCount, "
                &"SucceededCount with sum as SucceededCount , "
                &"FailedCount with sum as FailedCount, "
            &"PartiallySucceededCount with sum as PartiallySucceededCount , "
                &"CanceledCount with sum as CanceledCount "
            &")) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

(選擇性)重新命名查詢

您可以將預設查詢標籤 Query1 重新命名為更有意義的專案。 只要從 [ 查詢設定 ] 窗格輸入新名稱即可。

Power BI 查詢功能表選項、重新命名查詢的螢幕快照。

變更數據行數據類型

從 Power Query 編輯器 選取數據TotalCount行,然後從 [轉換] 功能選取 [資料類型],然後選擇 [整數]。 如需變更數據類型的詳細資訊,請參閱 轉換分析數據以產生Power BI報表、轉換資料行數據類型

(選擇性)重新命名數據行欄位

您可以重新命名資料列欄位。 例如,您可以將資料列 Pipeline.PipelineName 重新命名為 Pipeline Name,或 TotalCount 重新命名為 Total Count。 若要瞭解如何,請參閱 重新命名數據行欄位

關閉查詢並套用您的變更

完成所有數據轉換之後,請從 [常用] 功能表選擇 [關閉及套用],以儲存查詢並返回 Power BI 中的 [報表] 索引卷標。

Power Query 編輯器 [關閉並套用] 選項的螢幕快照。

建立環圈圖報表

  1. 在 Power BI 的 [視覺效果],選擇環圈報表。

    所有管線執行報表的視覺效果字段選取項目螢幕快照。

  2. 依指示的順序,將下列字段新增至 [值]。 以滑鼠右鍵按下每個字段,並確定 已選取 [總和 ]。

    • CanceledCount
    • PartiallySucceededCount.
    • SucceededCount
    • FailedCount
  3. 若要變更報表標題,請從 [視覺效果] 窗格中選取 [格式化您的視覺油漆筆刷] 圖示,選取 [一般],展開 [標題],然後取代現有的文字。

    [視覺效果] 窗格的螢幕快照、報表格式選項、變更標題。

    下圖顯示產生的報表。

    Power BI 範例 [管線結果摘要] 報表的螢幕快照。