Azure Monitor-REST-API-Filtersyntax

Viele Azure Monitor-APIs verwenden den Parameter {filter-expression}, den Sie verwenden können, um den gesammelten Datensatz zu filtern oder einzuschränken.

Verwenden des Filters "*" beim Anfordern mehrerer Ressourcen

Wichtig

Die * in einem Filter für mehrere Ressourcen ist kein Wildcard. Es handelt sich um eine Literalzeichenfolge, die zum Anfordern mehrerer Ressourcen verwendet wird. Wird * verwendet, um mehrere Ressourcen in einer einzigen Zeitreihe anzufordern.

Im folgenden $filter=Microsoft.ResourceId eq '*' Beispiel weist die API an, eine separate Zeitreihe pro VM-Ressource im Abonnement und in der Region zurückzugeben. Ohne den Filter würde die API eine einzelne Zeitreihe zurückgeben, die die durchschnittliche CPU für alle VMs aggregiert. Die Zeitreihen für jede Ressource werden durch den Microsoft.ResourceId-Metadatenwert für jeden Zeitreiheneintrag unterschieden.

Wenn Sie verwenden $filter=Microsoft.ResourceId eq '*' und keine Ressourcen vorhanden sind( in diesem Fall VMs in der angegebenen Zeitreihe), wird die leere Zeitreihe timeseries:[] zurückgegeben, da keine Ergebnisse für den angeforderten Dimensionssatz vorhanden sind, der enthält. ResourceId
Dieselbe Abfrage ohne filter gibt eine einzelne Zeitreihe zurück, die eine aggregierte durchschnittliche CPU = 0 für alle VMs zurückgibt, da dies die Summe aller angeforderten Dimensionen ist.

GET https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/providers/microsoft.Insights/metrics?timespan=2023-06-25T22:20:00.000Z/2023-06-26T22:25:00.000Z&interval=PT5M&metricnames=Percentage CPU&aggregation=average&api-version=2021-05-01&region=eastus&metricNamespace=microsoft.compute/virtualmachines&$filter=Microsoft.ResourceId eq '*'

Beispiel für $filter

Hier sind die möglichen Ausdruckszeichenfolgen, die Sie als {filter-expression}übergeben können. Es ist keine andere Syntax erlaubt.

  • Auflisten von Ereignissen für eine Ressourcengruppe

    $filter=eventTimestamp ge <Start Time> and eventTimestamp le <End Time> and eventChannels eq 'Admin, Operation' and resourceGroupName eq '<ResourceGroupName>'
    

    Beispiel:

    $filter=eventTimestamp ge 2014-12-29T22:00:37Z und eventTimestamp le 2014-12-29T23:36:37Z und eventChannels eq 'Admin, Operation' und resourceGroupName eq 'CloudLab'

  • Auflisten von Ereignissen für eine Ressource

    $filter=eventTimestamp ge <Start Time> and eventTimestamp le <End Time> and eventChannels eq 'Admin, Operation' and resourceUri eq '<ResourceURI>'
    

    Beispiel:

    $filter=eventTimestamp ge 2014-12-29T22:00:37Z und eventTimestamp le 2014-12-29T23:36:37Z und eventChannels eq 'Admin, Operation' und resourceUri eq '/subscriptions/089bd33f-d4ec-47fe-8ba5-0753aa5c5b33/resourcegroups/CloudLab/providers/Microsoft.Web/sites/mytestweb004'

  • Auflisten von Ereignissen für ein Azure-Abonnement

    $filter=eventTimestamp ge <Start Time> and eventTimestamp le <End Time> and eventChannels eq 'Admin, Operation'
    

    Beispiel:

    $filter=eventTimestamp ge 2014-12-29T22:00:37Z und eventTimestamp le 2014-12-29T23:36:37Z und eventChannels eq 'Admin, Operation'

  • Auflisten von Ereignissen für einen Azure-Ressourcenanbieter

    $filter=eventTimestamp ge <Start Time> and eventTimestamp le <End Time> and eventChannels eq 'Admin, Operation' and resourceProvider eq '<ResourceProviderName>'
    

    Beispiel:

    $filter=eventTimestamp ge 2014-12-29T22:00:37Z und eventTimestamp le 2014-12-29T23:36:37Z und eventChannels eq 'Admin, Operation' und resourceProvider eq 'Microsoft.Web'

  • Auflisten von Ereignissen für eine Korrelations-ID

    api-version=2014-04-01&$filter=eventTimestamp ge 2014-07-16T04:36:37.6407898Z and eventTimestamp le 2014-07-20T04:36:37.6407898Z and eventChannels eq 'Admin, Operation' and correlationId eq '<CorrelationID>'
    

    Beispiel: api-version=2014-04-01&$filter=eventTimestamp ge 2014-12-29T22:00:37Z und eventTimestamp le 2014-12-29T23:36:37Z und eventChannels eq 'Admin, Operation' und correlationId eq '07c85493-5e87-4efd-9200-0c64d904d878'