Beispielbericht über pipelinephasenweise Fehler

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

In diesem Artikel erfahren Sie, wie Sie einen Bericht über die täglichen Phasenfehler einer Pipeline erstellen. Dieser Bericht ähnelt dem Diagramm "Fehlertrend" des Pipelinedurchlaufrateberichts.

Die folgende Abbildung zeigt ein Beispiel für phasenweise Fehlerberichte für eine bestimmte Pipeline vom Oktober 2022 bis zum 15. Dezember 2022.

Screenshot des gestapelten Spaltenberichts für Power BI-Pipelines.

Wichtig

Power BI-Integration und Zugriff auf den OData-Feed des Analytics-Diensts sind in der Regel für Azure DevOps Services und Azure DevOps Server 2020 und höhere Versionen verfügbar. Die in diesem Artikel bereitgestellten Beispielabfragen gelten nur für Azure DevOps Server 2020 und höhere Versionen und hängen von version 3.0-preview oder höher ab. Wir empfehlen Ihnen, diese Abfragen zu verwenden und uns Feedback zu geben.

Voraussetzungen

  • Um Analytics-Daten anzuzeigen und den Dienst abzufragen, müssen Sie Mitglied eines Projekts mit oder höherer Basiszugriff sein. Standardmäßig erhalten alle Projektmitglieder Berechtigungen zum Abfragen von Analytics und zum Definieren von Analytics-Ansichten.
  • Weitere Informationen zu weiteren Voraussetzungen für die Dienst- und Featureaktivierung sowie allgemeine Datennachverfolgungsaktivitäten finden Sie unter Berechtigungen und Voraussetzungen für den Zugriff auf Analytics.

Hinweis

In diesem Artikel wird davon ausgegangen, dass Sie die Übersicht über Beispielberichte mit OData-Abfragen gelesen haben und über ein grundlegendes Verständnis von Power BI verfügen.

Beispielabfragen

Trendberichte zu Phasen-, Aufgaben- oder Auftragsfehlern können durch Abfragen des Entitätssatzes PipelineRunActivityResults erstellt werden.

Hinweis

Informationen zum Ermitteln verfügbarer Eigenschaften für Filter- oder Berichtszwecke finden Sie unter Metadatenreferenz für Azure Pipelines. Sie können Ihre Abfragen filtern oder Eigenschaften zurückgeben, indem Sie einen der Werte unter oder NavigationPropertyBinding PathEntityType verwenden, die Property mit einem EntitySetverfügbar sind. Jede EntitySet entspricht einem EntityType. Weitere Informationen zum Datentyp der einzelnen Werte finden Sie in den Metadaten, die für den entsprechenden EntityTypebereitgestellt werden.

Phasenweiser Fehlertrend

Verwenden Sie die folgenden Abfragen, um phasenweise Fehlertrends für eine bestimmte Pipeline aus einem bestimmten Datum anzuzeigen.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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 'Failed' "
        &"and TaskOutcome eq 'Failed' "
        &") "
            &"/groupby( "
                &"(PipelineRunCompletedOn/Date, PipelineRunId, PipelineJob/StageName ), "
                &"aggregate (FailedCount with sum as FailedCount)) "
            &"/groupby( "
                &"(PipelineRunCompletedOn/Date, PipelineJob/StageName ), "
            &"aggregate "
        &"(cast(FailedCount gt 0, Edm.Int32) with sum as FailedStageCount)) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Ersetzungszeichenfolgen und Abfrageaufschlüsselung

Ersetzen Sie die folgenden Zeichenfolgen durch Ihre Werte. Schließen Sie keine Klammern {} in Ihre Ersetzung ein. Wenn Ihr Organisationsname beispielsweise "Fabrikam" lautet, ersetzen Sie {organization} durch Fabrikam, nicht {Fabrikam}.

  • {organization} - Name Ihrer Organisation
  • {project} - Name Ihres Teamprojekts
  • {pipelinename} - Ihr Pipelinename. Beispiel: Fabrikam hourly build pipeline
  • {startdate} - Das Datum, an dem Der Bericht beginnt. Format: JJJJ-MM-DDZ. Beispiel: 2021-09-01Z steht für den 1. September 2021. Schließen Sie keine Anführungszeichen oder eckigen Klammern ein, und verwenden Sie zwei Ziffern sowohl für Monat als auch für Datum.

Abfrageaufschlüsselung

In der folgenden Tabelle werden die einzelnen Teile der Abfrage beschrieben.

Abfrageteil

Beschreibung


$apply=filter(

Startklausel filter() .

Pipeline/PipelineName eq '{pipelinename}'

Zurückgeben von Vorgangsergebnissen für eine bestimmte Pipeline.

and PipelineRunCompletedOn/Date ge {startdate}

Zurückgeben von Vorgangsergebnissen für Pipelineausführungen am oder nach dem angegebenen Datum.

and PipelineRunOutcome eq 'Failed'

Zurückgeben von Vorgangsergebnissen, bei denen das Buildergebnis fehlgeschlagen ist.

and TaskOutcome eq 'Failed'

Gibt Vorgangsergebnisse zurück, bei denen das Ergebnis des Vorgangs fehlgeschlagen ist.

)

Close-Klausel filter .

/groupby(

Startklausel groupby() .

(PipelineRunCompletedOn/Date, PipelineRunId, PipelineJob/StageName ),

Gruppieren nach Abschluss der Pipelineausführung, Build-ID und Phasenname.

aggregate (FailedCount with sum as FailedCount))

Für jeden Tag erstellen Sie ID und Phase; die Gesamtzahl der Fehler zählen. Dies ist die Gesamtanzahl der Vorgangsfehler und keine Phasenfehler.

/groupby(

Startklausel groupby() .

(PipelineRunCompletedOn/Date, PipelineJob/StageName ),

Nach Tag und Phasenname gruppieren.

aggregate

Startklausel aggregate .

(cast(FailedCount gt 0, Edm.Int32) with sum as FailedStageCount))

Summieren Sie für jeden Tag die Häufigkeit, mit der eine Phase fehlgeschlagen ist, und schließen Sie dann die aggregate Klausel.

Vorgangsweisen-Fehlertrend

Verwenden Sie die folgenden Abfragen, um den Trend für aufgabenweise Fehler anzuzeigen.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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 'Failed' "
        &"and TaskOutcome eq 'Failed' "
        &") "
            &"/groupby( "
                &"(PipelineRunCompletedOn/Date, TaskDisplayName), "
                &"aggregate "
            &"(FailedCount with sum as FailedCount)) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

Job wise failure trend

Verwenden Sie die folgenden Abfragen, um den Trend für auftragsweise Fehler anzuzeigen.

Sie können die unten aufgeführte Power BI-Abfrage direkt in das Fenster Get Data-Blank> Query einfügen. Weitere Informationen finden Sie unter Übersicht über Beispielberichte mit OData-Abfragen.

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 'Failed' "
        &"and TaskOutcome eq 'Failed' "
        &") "
            &"/groupby( "
                &"(PipelineRunCompletedOn/Date, PipelineRunId, PipelineJob/JobName ), "
                &"aggregate (FailedCount with sum as FailedCount)) "
            &"/groupby( "
                &"(PipelineRunCompletedOn/Date, PipelineJob/JobName ), "
            &"aggregate "
        &"(cast(FailedCount gt 0, Edm.Int32) with sum as FailedJobCount)) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

(Optional) Abfrage umbenennen

Sie können die Standardabfragebezeichnung Query1 in aussagekräftiger umbenennen. Geben Sie einfach im Bereich Abfrageeinstellungen einen neuen Namen ein.

Screenshot: Menüoptionen für Power BI-Abfragen, Abfrage umbenennen.

Erweitern von Spalten in Power Query-Editor

Vor dem Erstellen des Berichts müssen Sie die folgenden beiden Spalten erweitern. Informationen zum Erweitern von Arbeitselementen finden Sie unter Transformieren von Analysedaten zum Generieren von Power BI-Berichten.

  • Erweitern PipelineJob bis PipelineJob.StageName
  • Erweitern PipelineRunCompletedOn bis PipelineRunCompletedOn.Date

Ändern des Spaltendatentyps

Ändern Sie im Menü "Transformieren" den Datentyp für die FailedStageCount Spalte in Wer le Zahl. Informationen dazu finden Sie unter Transformieren eines Spaltendatentyps.

(Optional) Umbenennen von Spaltenfeldern

Sie können Spaltenfelder in benutzerfreundlichere Spaltenfelder umbenennen. Sie können z. B. die Spalte Pipeline.PipelineNamePipeline Namein oder TotalCount in Total Count. Informationen dazu finden Sie unter Umbenennen von Spaltenfeldern.

Schließen Sie die Abfrage, und wenden Sie Ihre Änderungen an.

Nachdem Sie alle Datentransformationen abgeschlossen haben, wählen Sie "Schließen" und "Übernehmen " im Menü "Start " aus, um die Abfrage zu speichern und zur Registerkarte "Bericht " in Power BI zurückzukehren.

Screenshot der Option

Erstellen des Diagrammberichts "Gestapelte Säulen"

  1. Wählen Sie in Power BI unter "Visualisierungen" den Bericht "Gestapelte Säulendiagramme" aus. Im folgenden Beispiel wird davon ausgegangen, dass niemand Spalten umbenannt hat.

    Screenshot der Auswahl von Visualisierungsfeldern für phasenweise Fehler des Diagramms

  2. Fügen Sie der X-Achse hinzu, klicken Sie PipelineRunCompletedOn.Date mit der rechten Maustaste darauf, und wählen Sie "PipelineRunCompletedOn.Date" anstelle der Datumshierarchie aus.

  3. Klicken Sie FailedStagedCount mit der rechten Maustaste auf die Y-Achse , und stellen Sie sicher, dass Summe ausgewählt ist.

  4. Zur Legende hinzufügenPipelineJob.StageName.

  5. Wenn Sie den Berichtstitel, die Legende oder andere visuelle Berichtselemente ändern möchten, wählen Sie im Bereich "Visualisierungen" das Symbol "Visueller Pinsel formatieren" aus, und passen Sie eine oder mehrere Einstellungen an.

Ihr Bericht sollte ähnlich wie in der folgenden Abbildung aussehen.

Screenshot des Gestapelten Spaltenberichts für Power BI-Pipelines im Beispiel für phasenweise Fehler.