Projekt- und organisationsbezogene Abfragen
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Mithilfe von Analytics für Azure DevOps können Sie Abfragen erstellen, die auf ein Projekt oder eine Organisation oder Sammlung ausgerichtet sind. Sie können diese Abfragen direkt in Ihrem Browser oder in Power BI ausführen.
Projektbereichsabfragen helfen Ihnen dabei, Fragen zu einem einzelnen Projekt zu beantworten, während Organisations- und Sammlungsabfragen ihnen ermöglichen, Fragen zu beantworten, die Projektgrenzen überschreiten. Organisations- und Sammlungsabfragen erfordern umfassendere Benutzerberechtigungen oder sorgfältige Bereichseinschränkungen, um sicherzustellen, dass Ihre Abfrage aufgrund fehlender Berechtigungen nicht blockiert wird.
Hinweis
Der Analysedienst wird automatisch aktiviert und in der Produktion für alle Azure DevOps-Dienste unterstützt. Power BI-Integration und Zugriff auf den OData-Feed des Analytics-Diensts sind allgemein verfügbar. Wir empfehlen Ihnen, sie zu verwenden und uns Feedback zu geben.
Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version ist v2.0
, und die neueste Vorschauversion ist v4.0-preview
. Weitere Informationen finden Sie unter OData-API-Versionsverwaltung.
Hinweis
Der Analysedienst wird automatisch installiert und in der Produktion für alle neuen Projektsammlungen für Azure DevOps Server 2020 und höhere Versionen unterstützt. Power BI-Integration und Zugriff auf den OData-Feed des Analytics-Diensts sind allgemein verfügbar. Wir empfehlen Ihnen, sie zu verwenden und uns Feedback zu geben. Wenn Sie ein Upgrade von Azure DevOps Server 2019 durchgeführt haben, können Sie den Analysedienst während des Upgrades installieren.
Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version ist v2.0
, und die neueste Vorschauversion ist v4.0-preview
. Weitere Informationen finden Sie unter OData-API-Versionsverwaltung.
Hinweis
Der Analysedienst befindet sich in der Vorschau für Azure DevOps Server 2019. Sie können es für eine Projektsammlung aktivieren oder installieren. Die Power BI-Integration und der Zugriff auf den OData-Feed des Analytics-Diensts befinden sich in der Vorschau. Wir empfehlen Ihnen, sie zu verwenden und uns Feedback zu geben.
Verfügbare Daten sind versionsabhängig. Die neueste unterstützte Version ist v2.0
, und die neueste Vorschauversion ist v4.0-preview
. Weitere Informationen finden Sie unter OData-API-Versionsverwaltung.
Voraussetzungen
- Access: Mitglied eines Projekts mit mindestens standardem Zugriff sein.
- Berechtigungen: Standardmäßig verfügen Projektmitglieder über die Berechtigung zum Abfragen von Analysen und Erstellen von Ansichten.
- Weitere Informationen zu anderen Voraussetzungen für die Dienst- und Featureaktivierung sowie allgemeine Datenverfolgungsaktivitäten finden Sie unter Berechtigungen und Voraussetzungen für den Zugriff auf Analytics.
Wichtig
Wenn Sie keinen Zugriff auf alle Projekte in einer Organisation haben, wird empfohlen, einen Projektfilter auf alle Ihre Abfragen anzuwenden. Wenn Sie Daten in Clienttools wie Power BI oder Excel abrufen, ist die Verwendung der Projektpfadsyntax die beste Methode, um sicherzustellen, dass alle Ihre Daten durch das angegebene Projekt eingeschränkt werden. Es wird empfohlen, abfragen mit Organisationsbereich oder Sammlung nur dann zu verwenden, wenn Sie zwei oder mehr Projekte melden müssen.
Projektbezogene Abfragen
Sie erstellen eine Abfrage, indem Sie die OData-URL in einen unterstützten Webbrowser eingeben.
Die Basis-URL für eine OData-Abfrage auf Projektebene ist wie in der folgenden Syntax dargestellt.
https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/{version}/
Ersetzen {OrganizationName}
Sie {ProjectName}
in den bereitgestellten Beispielen Ihre Namen ihrer Organisation und Ihres Projekts, die Sie abfragen möchten.
Hinweis
Die restlichen Beispiele in diesem Artikel basieren auf einer Azure DevOps Services-URL. Sie müssen in Ihrer Azure DevOps Server-URL ersetzen, um die Beispiele zu üben.
Zurückgeben einer Anzahl von Arbeitsaufgaben
Die folgende Projektbereichsabfrage gibt beispielsweise die Anzahl der Arbeitsaufgaben für ein bestimmtes Projekt zurück.
https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/v1.0/WorkItems/$count
Beispielsweise gibt eine Abfrage des Fabrikam Fiber-Projekts eine Anzahl von 7126 Arbeitsaufgaben zurück. Gelöschte Arbeitsaufgaben sind nicht in der Anzahl enthalten.
https://analytics.dev.azure.com/fabrikam/Fabrikam Fiber/_odata/v1.0/WorkItems/$count
7126
Rückgabeprojektbereichspfade
Ebenso gibt die folgende Abfragezeichenfolge die Bereiche für ein bestimmtes Projekt zurück:
https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/v1.0/Areas
Es entspricht dem folgenden Filter für eine durch die Organisation bezogene Abfrage:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/Areas?
$filter=Project/ProjectName eq '{ProjectName}'
Beispielsweise gibt eine Abfrage des Fabrikam Fiber-Projekts alle Eigenschaften zurück, die für einen Bereichspfad definiert sind, da in der Abfrage kein $select
Operator angewendet wird.
https://analytics.dev.azure.com/fabrikam/Fabrikam Fiber/_odata/v1.0/Areas
Das folgende Beispiel zeigt die Daten, die für einen einzelnen Bereichspfad zurückgegeben werden.
ProjectSK "56af920d-393b-4236-9a07-24439ccaa85c"
AreaSK "26be05fd-e68a-4fcb-833f-497f6bee45f2"
AreaId "26be05fd-e68a-4fcb-833f-497f6bee45f2"
AreaName "Service Delivery"
Number 55373
AreaPath "Fabrikam Fiber\\Service Delivery"
AreaLevel1 "Fabrikam Fiber"
AreaLevel2 "Service Delivery"
AreaLevel3 null
AreaLevel4 null
AreaLevel5 null
AreaLevel6 null
AreaLevel7 null
AreaLevel8 null
AreaLevel9 null
AreaLevel10 null
AreaLevel11 null
AreaLevel12 null
AreaLevel13 null
AreaLevel14 null
Depth 1
Verwenden der Option $expand
Wenn Sie eine projektbezogene Abfrage mit einer $expand
Option verwenden, müssen Sie keine anderen Filter bereitstellen.
Beispielsweise der folgende Projektbereichsfilter:
https://analytics.dev.azure.com/{OrganizationName}/{ProjectName}/_odata/v1.0/WorkItems?
$expand=Parent
wird automatisch gefiltert, um Sicherheit zu erzwingen:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=ProjectName eq '{ProjectName}'
&$expand=Parent($filter=ProjectName eq '{ProjectName}')
Organisationsbezogene Abfragen
Die Basis-URL für Abfragen auf Organisationsebene ist wie gezeigt:
https://analytics.dev.azure.com/{OrganizationName}/_odata/v1.0
Wenn Sie eine durch die Organisation bezogene Abfrage mit einer $expand
Option verwenden, müssen Sie einen anderen Filter angeben.
Die folgende abfrage mit Organisationsbereich, die zum Abrufen der untergeordneten Elemente aller Arbeitsaufgaben verwendet $expand
wird.
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=Project/ProjectName eq '{ProjectName}'
&$expand=Children
Es erfordert einen weiteren Filter, um zu überprüfen, ob die untergeordneten Elemente auf das angegebene Projekt beschränkt sind:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=Project/ProjectName eq '{ProjectName}'
&$expand=Children($filter=Project/ProjectName eq '{ProjectName}')
Zurückgeben des übergeordneten Elements aller Arbeitsaufgaben
Die folgende Abfrage, die eine $expand
Option zum Abrufen des übergeordneten Elements aller Arbeitsaufgaben verwendet.
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=Project/ProjectName eq '{ProjectName}'
&$expand=Parent
Es erfordert einen anderen Filter, um zu überprüfen, ob das übergeordnete Element auf das angegebene Projekt beschränkt ist:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=Project/ProjectName eq '{ProjectName}'
&$expand=Parent($filter=Project/ProjectName eq '{ProjectName}')
Ohne den anderen Filter schlägt die Anforderung fehl, wenn das übergeordnete Element einer Arbeitsaufgabe auf Arbeitsaufgaben in einem Projekt verweist, auf das Sie keinen Lesezugriff haben.
Sicherheitseinschränkungen auf Projektebene
Analytics hat einige weitere Einschränkungen für die Abfragesyntax im Zusammenhang mit der Sicherheit auf Projektebene.
Die any
Oder all
Filter gelten für die Basisentität für ein $expand
. Bei Filtern, die auf einem Projekt basieren, wird der Filter bei Verwendung eines $expand
:
Beispielsweise in der folgenden Abfrage:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=ProjectName eq '{ProjectName}'
&$expand=Children($filter=Project/ProjectName eq '{ProjectName}')
Wird wie folgt interpretiert:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=ProjectName eq '{ProjectName}'
&$expand=Children
und schlägt fehl, wenn Sie keinen Zugriff auf alle Projekte haben.
Um die Einschränkung zu umgehen, müssen Sie im Folgenden einen zusätzlichen Ausdruck $filter
hinzufügen:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$filter=ProjectName eq '{ProjectName}' and Children/any(r: r/ProjectName eq '{ProjectName}')
&$expand=Children
Die Verwendung $level
wird nur unterstützt, wenn Sie Zugriff auf alle Projekte in der Auflistung oder bei Verwendung einer projektbezogenen Abfrage haben:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$expand=Children($levels=2;$filter=ProjectName eq '{ProjectName}')
Analytics unterstützt keine querstufige Referenz für Projekte, die die $it
Klausel verwenden. Die folgende Abfrage verweist beispielsweise auf den Alias der Stammarbeitsaufgabe ProjectName
$it
, der nicht unterstützt wird:
https://analytics.dev.azure.com/{OrganizationName}/_odata/{version}/WorkItems?
$expand=Links(
$expand=TargetWorkItem;
$filter=TargetWorkItem/Project/ProjectName eq $it/Project/ProjectName)