Procedura dettagliata sull'API REST di Monitoraggio di Azure

Questo articolo illustra come usare il riferimento all'API REST di Monitoraggio di Azure.

Recuperare le definizioni delle metriche, i valori delle dimensioni e i valori delle metriche usando l'API di Monitoraggio di Azure e usare i dati nelle applicazioni o archiviarli in un database per l'analisi. È anche possibile elencare le regole di avviso e visualizzare i log attività usando l'API di Monitoraggio di Azure.

Autenticare le richieste di monitoraggio di Azure

La richiesta inviata tramite l'API di Monitoraggio di Azure usa il modello di autenticazione di Azure Resource Manager. Tutte le richieste vengono autenticate con Microsoft Entra ID. Un approccio all'autenticazione dell'applicazione client consiste nel creare un'entità servizio Microsoft Entra e recuperare un token di autenticazione. È possibile creare un'entità servizio Microsoft Entra usando il portale di Azure, l'interfaccia della riga di comando o PowerShell. Per altre informazioni, vedere Registrare un'app per richiedere token di autorizzazione e usare le API.

Recuperare un token

Dopo aver creato un'entità servizio, recuperare un token di accesso. Specificare resource=https://management.azure.com nella richiesta di token.

Ottenere un token di autenticazione usando uno dei metodi seguenti:

  • CLI
  • REST API
  • SDK

Quando si richiede un token, è necessario specificare un parametro resource. Il parametro resource è l'URL della risorsa a cui si vuole accedere.

Le risorse includono:

  • https://management.azure.com
  • https://api.loganalytics.io
  • https://monitoring.azure.com

Ottenere un token usando una richiesta REST

Usare la chiamata API REST seguente per ottenere un token. Questa richiesta usa un ID client e un segreto client per autenticare la richiesta. L'ID client e il segreto client vengono ottenuti quando si registra l'applicazione con Microsoft Entra ID. Per altre informazioni, vedere Registrare un'app per richiedere token di autorizzazione e usare le API

curl -X POST 'https://login.microsoftonline.com/<tennant ID>/oauth2/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_id=<your apps client ID>' \
--data-urlencode 'client_secret=<your apps client secret' \
--data-urlencode 'resource=https://monitoring.azure.com'

Il corpo della risposta viene visualizzato nel formato seguente:

{
    "token_type": "Bearer",
    "expires_in": "86399",
    "ext_expires_in": "86399",
    "expires_on": "1672826207",
    "not_before": "1672739507",
    "resource": "https://monitoring.azure.com",
    "access_token": "eyJ0eXAiOiJKV1Qi....gpHWoRzeDdVQd2OE3dNsLIvUIxQ"
}

Dopo l'autenticazione e il recupero di un token, usare il token di accesso nelle richieste dell'API di Monitoraggio di Azure includendo l'intestazione 'Authorization: Bearer <access token>'

Nota

Per altre informazioni sull'uso dell'API REST di Azure, vedere le informazioni di riferimento sull'API REST di Azure.

Recuperare l'ID risorsa

L'uso dell'API REST richiede l'ID risorsa della risorsa di Azure di destinazione. Gli ID risorsa seguono il modello seguente:

/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/<provider>/<resource name>/

Ad esempio:

  • Hub IoT di Azure: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Devices/IotHubs/<iot-hub-name>
  • Pool elastico di SQL: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Sql/servers/<pool-db>/elasticpools/<sql-pool-name>
  • Database SQL di Azure (v12): /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Sql/servers/<server-name>/databases/<database-name>
  • Bus di servizio: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ServiceBus/<namespace><servicebus-name>
  • Set di scalabilità della macchina virtuale: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachineScaleSets/<vm-name>
  • Macchine virtuali di Microsoft Azure: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachines/<vm-name>
  • Hub eventi: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.EventHub/namespaces/<eventhub-namespace>

Usare il portale di Azure, PowerShell o l'interfaccia della riga di comando di Azure per trovare l'ID risorsa.

Per trovare l'ID risorsa nel portale, nella pagina di panoramica della risorsa selezionare Visualizzazione JSONScreenshot che mostra la pagina di panoramica per una risorsa con il collegamento visualizzazione JSON evidenziato.

Viene visualizzata la pagina Resource JSON. L'ID risorsa può essere copiato usando l'icona a destra dell'ID.

Screenshot che mostra la pagina JSON della risorsa per una risorsa.

Endpoint API

Gli endpoint API usano il modello seguente:
/<resource URI>/providers/microsoft.insights/<metrics|metricDefinitions>?api-version=<apiVersion>
L'oggetto resource URI è costituito dai componenti seguenti:
/subscriptions/<subscription id>/resourcegroups/<resourceGroupName>/providers/<resourceProviderNamespace>/<resourceType>/<resourceName>/

Importante

Assicurarsi di includere /providers/microsoft.insights/ dopo l'URI della risorsa quando si effettua una chiamata API per recuperare le metriche o le definizioni delle metriche.

Recuperare le definizioni delle metriche

Usare l'API REST relativa alle definizione delle metriche del Monitoraggio di Azure per accedere all'elenco di metriche disponibili per un servizio. Usare il formato di richiesta seguente per recuperare le definizioni delle metriche.

GET /subscriptions/<subscription id>/resourcegroups/<resourceGroupName>/providers/<resourceProviderNamespace>/<resourceType>/<resourceName>/providers/microsoft.insights/metricDefinitions?api-version=<apiVersion>
Host: management.azure.com
Content-Type: application/json
Authorization: Bearer <access token>

Ad esempio, la richiesta seguente recupera le definizioni delle metriche per un account di archiviazione di Azure.

curl --location --request GET 'https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage/providers/microsoft.insights/metricDefinitions?api-version=2018-01-01'
--header 'Authorization: Bearer eyJ0eXAiOi...xYz

Il codice JSON seguente mostra un corpo della risposta di esempio. In questo esempio solo la seconda metrica ha dimensioni.

{
    "value": [
        {
            "id": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage/providers/microsoft.insights/metricdefinitions/UsedCapacity",
            "resourceId": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage",
            "namespace": "Microsoft.Storage/storageAccounts",
            "category": "Capacity",
            "name": {
                "value": "UsedCapacity",
                "localizedValue": "Used capacity"
            },
            "isDimensionRequired": false,
            "unit": "Bytes",
            "primaryAggregationType": "Average",
            "supportedAggregationTypes": [
                "Total",
                "Average",
                "Minimum",
                "Maximum"
            ],
            "metricAvailabilities": [
                {
                    "timeGrain": "PT1H",
                    "retention": "P93D"
                },
                 ...
                {
                    "timeGrain": "PT12H",
                    "retention": "P93D"
                },
                {
                    "timeGrain": "P1D",
                    "retention": "P93D"
                }
            ]
        },
        {
            "id": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage/providers/microsoft.insights/metricdefinitions/Transactions",
            "resourceId": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage",
            "namespace": "Microsoft.Storage/storageAccounts",
            "category": "Transaction",
            "name": {
                "value": "Transactions",
                "localizedValue": "Transactions"
            },
            "isDimensionRequired": false,
            "unit": "Count",
            "primaryAggregationType": "Total",
            "supportedAggregationTypes": [
                "Total"
            ],
            "metricAvailabilities": [
                {
                    "timeGrain": "PT1M",
                    "retention": "P93D"
                },
                {
                    "timeGrain": "PT5M",
                    "retention": "P93D"
                },
                ...
                {
                    "timeGrain": "PT30M",
                    "retention": "P93D"
                },
                {
                    "timeGrain": "PT1H",
                    "retention": "P93D"
                },
                ...
                {
                    "timeGrain": "P1D",
                    "retention": "P93D"
                }
            ],
            "dimensions": [
                {
                    "value": "ResponseType",
                    "localizedValue": "Response type"
                },
                {
                    "value": "GeoType",
                    "localizedValue": "Geo type"
                },
                {
                    "value": "ApiName",
                    "localizedValue": "API name"
                }
            ]
        },
        ...
    ]
}

Nota

È consigliabile usare la versione API "2018-01-01" o successiva. Le versioni precedenti dell'API delle definizioni delle metriche non supportano le dimensioni.

Recuperare i valori delle dimensioni

Dopo aver recuperato le definizioni delle metriche disponibili, recuperare l'intervallo di valori per le dimensioni della metrica. Usare i valori delle dimensioni per filtrare o segmentare le metriche nelle query. Usare l'API REST metriche di Monitoraggio di Azure per trovare tutti i valori per una determinata dimensione metrica.

Usare l'elemento name.value della metrica nelle definizioni di filtro. Se non è specificato alcun filtro, viene restituita la metrica predefinita. L'API consente solo a una dimensione di avere un filtro con caratteri jolly. Specificare la richiesta di valori delle dimensioni usando il parametro di query "resultType=metadata". Il resultType viene omesso per una richiesta di valori delle metriche.

Nota

Per recuperare i valori delle dimensioni usando l'API REST di Monitoraggio di Azure, usare la versione dell'API "2019-07-01" o successiva.

Utilizzare il formato di richiesta seguente per recuperare i valori delle dimensioni.

GET /subscriptions/<subscription-id>/resourceGroups/  
<resource-group-name>/providers/<resource-provider-namespace>/  
<resource-type>/<resource-name>/providers/microsoft.insights/  
metrics?metricnames=<metric>  
&timespan=<starttime/endtime>  
&$filter=<filter>  
&resultType=metadata  
&api-version=<apiVersion>   HTTP/1.1
Host: management.azure.com
Content-Type: application/json
Authorization: Bearer <access token>

Nell'esempio seguente viene recuperato l'elenco di valori di dimensione generati per la dimensione API Name della metrica Transactions, in cui la dimensione GeoType ha un valore di Primary, per l'intervallo di tempo specificato.

curl --location --request GET 'https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage/providers/microsoft.insights/metrics  \
?metricnames=Transactions \
&timespan=2023-03-01T00:00:00Z/2023-03-02T00:00:00Z \
&resultType=metadata \
&$filter=GeoType eq \'Primary\' and ApiName eq \'*\' \
&api-version=2019-07-01'
-header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJ0e..meG1lWm9Y'

Il codice JSON seguente mostra un corpo della risposta di esempio.

{
  "timespan": "2023-03-01T00:00:00Z/2023-03-02T00:00:00Z",
  "value": [
    {
      "id": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage/providers/Microsoft.Insights/metrics/Transactions",
      "type": "Microsoft.Insights/metrics",
      "name": {
        "value": "Transactions",
        "localizedValue": "Transactions"
      },
      "unit": "Count",
      "timeseries": [
        {
          "metadatavalues": [
            {
              "name": {
                "value": "apiname",
                "localizedValue": "apiname"
              },
              "value": "DeleteBlob"
            }
          ]
        },
        {
          "metadatavalues": [
            {
              "name": {
                "value": "apiname",
                "localizedValue": "apiname"
              },
              "value": "SetBlobProperties"
            }
          ]
        },
        ...
      ]
    }
  ],
  "namespace": "Microsoft.Storage/storageAccounts",
  "resourceregion": "eastus"
}

Recuperare i valori delle metriche

Dopo aver recuperato le definizioni delle metriche e i valori delle dimensioni, recuperare i valori delle metriche. Usare l'API REST metriche di Monitoraggio di Azure per recuperare i valori delle metriche.

Usare l'elemento name.value della metrica nelle definizioni di filtro. Se non viene specificato alcun filtro della dimensione, viene restituita la metrica di rollup aggregata.

Più serie temporali

Una serie temporale è un set di punti dati ordinati in base al tempo per una determinata combinazione di dimensioni. Una dimensione è un aspetto della metrica che descrive il punto dati, ad esempio ID risorsa, area o ApiName.

  • Per recuperare più serie temporali con valori di dimensione specifici, specificare un parametro di query di filtro che specifica entrambi i valori della dimensione, ad esempio "&$filter=ApiName eq 'ListContainers' or ApiName eq 'GetBlobServiceProperties'". In questo esempio si ottiene una serie temporale in cui ApiName è ListContainers e una seconda serie temporale dove ApiName è GetBlobServiceProperties.
  • Per restituire una serie temporale per ogni valore di una determinata dimensione, utilizzare un filtro *, ad esempio "&$filter=ApiName eq '*'". Usare i parametri di query Top e OrderBy per limitare e ordinare il numero di serie temporali restituite. In questo esempio si ottiene una serie temporale per ogni valore di ApiName nel set di risultati. Se non vengono restituiti dati, l'API restituisce una serie temporale vuota "timeseries": [].

Nota

Per recuperare i valori delle metriche multidimensionali usando l'API REST di Monitoraggio di Azure, usare la versione dell'API "2019-07-01" o successiva.

Usare il formato di richiesta seguente per recuperare i valori delle metriche.

GET /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/<resource-provider-namespace>/<resource-type>/<resource-name>/providers/microsoft.insights/metrics?metricnames=<metric>&timespan=<starttime/endtime>&$filter=<filter>&interval=<timeGrain>&aggregation=<aggreation>&api-version=<apiVersion>
Host: management.azure.com
Content-Type: application/json
Authorization: Bearer <access token>

Nell'esempio seguente vengono recuperate le prime tre API, in base al numero di Transactions in ordine decrescente, durante un intervallo di 5 minuti, in cui la dimensione GeoType ha un valore pari a Primary.

curl --location --request GET 'https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage/providers/microsoft.insights/metrics \
?metricnames=Transactions \
&timespan=2023-03-01T02:00:00Z/2023-03-01T02:05:00Z \
& $filter=apiname eq '\''GetBlobProperties'\'
&interval=PT1M \
&aggregation=Total  \
&top=3 \
&orderby=Total desc \
&api-version=2019-07-01"' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer yJ0eXAiOi...g1dCI6Ii1LS'

Il codice JSON seguente mostra un corpo della risposta di esempio.

{
  "cost": 0,
  "timespan": "2023-03-01T02:00:00Z/2023-03-01T02:05:00Z",
  "interval": "PT1M",
  "value": [
    {
      "id": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/azmon-rest-api-walkthrough/providers/Microsoft.Storage/storageAccounts/ContosoStorage/providers/Microsoft.Insights/metrics/Transactions",
      "type": "Microsoft.Insights/metrics",
      "name": {
        "value": "Transactions",
        "localizedValue": "Transactions"
      },
      "unit": "Count",
      "timeseries": [
        {
          "metadatavalues": [
            {
              "name": {
                "value": "apiname",
                "localizedValue": "apiname"
              },
              "value": "GetBlobProperties"
            }
          ],
          "data": [
            {
              "timeStamp": "2023-09-19T02:00:00Z",
              "total": 2
            },
            {
              "timeStamp": "2023-09-19T02:01:00Z",
              "total": 1
            },
            {
              "timeStamp": "2023-09-19T02:02:00Z",
              "total": 3
            },
            {
              "timeStamp": "2023-09-19T02:03:00Z",
              "total": 7
            },
            {
              "timeStamp": "2023-09-19T02:04:00Z",
              "total": 2
            }
          ]
        },
        ...
      ]
    }
  ],
  "namespace": "Microsoft.Storage/storageAccounts",
  "resourceregion": "eastus"
}

Esecuzione di query sulle metriche per più risorse alla volta.

Oltre all'esecuzione di query per le metriche su una singola risorsa, alcuni tipi di risorse supportano anche l'esecuzione di query per più risorse in una singola richiesta. Queste API sono la potenza dell'esperienza multi-risorsa in Esplora metriche di Azure. Il set di tipi di risorse che supportano l'esecuzione di query per più metriche può essere visualizzato nel pannello Metriche in Monitoraggio di Azure tramite l'elenco a discesa tipo di risorsa nel selettore di ambito nel pannello del contesto. Per altre informazioni, vedere la documentazione dell'esperienza utente su più risorse.

Esistono alcune differenze importanti tra l'esecuzione di query sulle metriche per più risorse e singole.

  • Le API a più risorse delle metriche operano a livello di sottoscrizione anziché a livello di ID risorsa. Questa restrizione significa che gli utenti che eseguono query su queste API devono disporre delle autorizzazioni di lettura di monitoraggio per la sottoscrizione stessa.
  • Le API per più risorse delle metriche supportano solo un singolo resourceType per query, che deve essere specificato sotto forma di parametro di query dello spazio dei nomi delle metriche.
  • Le API a più risorse delle metriche supportano solo una singola area di Azure per ogni query, che deve essere specificata sotto forma di parametro di query di area.

Esecuzione di query sulle metriche per più risorse

L'esempio seguente mostra una singola richiesta di definizioni delle metriche:

GET https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/EASTUS-TESTING/providers/Microsoft.Compute/virtualMachines/TestVM1/providers/microsoft.insights/metricdefinitions?api-version=2021-05-01

La richiesta seguente mostra la richiesta di definizioni delle metriche equivalenti per più risorse. Le uniche modifiche sono il percorso della sottoscrizione anziché un percorso ID risorsa e l'aggiunta di parametri di query region e metricNamespace.

GET https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/providers/microsoft.insights/metricdefinitions?api-version=2021-05-01&region=eastus&metricNamespace=microsoft.compute/virtualmachines

L'esempio seguente mostra una singola richiesta di metriche.

GET https://management.azure.com/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/EASTUS-TESTING/providers/Microsoft.Compute/virtualMachines/TestVM1/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

Di seguito è riportata una richiesta di metriche equivalente per più risorse:

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 '*'

Nota

Un filtro Microsoft.ResourceId eq '*' viene aggiunto nell'esempio per le richieste di metriche a più risorse. Il filtro * indica all'API di restituire una serie temporale separata per ogni risorsa macchina virtuale con dati nella sottoscrizione e nell'area. Senza il filtro l'API restituirà una singola serie temporale aggregando la CPU media per tutte le macchine virtuali. La serie temporale per ogni risorsa viene differenziata in base al valore dei metadati Microsoft.ResourceId in ogni voce della serie temporale, come si può notare nel valore restituito di esempio seguente. Se non sono presenti resourceId recuperati da questa query, viene restituita una serie temporale vuota"timeseries": [].

{
    "timespan": "2023-06-25T22:35:00Z/2023-06-26T22:40:00Z",
    "interval": "PT6H",
    "value": [
        {
            "id": "subscriptions/12345678-abcd-98765432-abcdef012345/providers/Microsoft.Insights/metrics/Percentage CPU",
            "type": "Microsoft.Insights/metrics",
            "name": {
                "value": "Percentage CPU",
                "localizedValue": "Percentage CPU"
            },
            "displayDescription": "The percentage of allocated compute units that are currently in use by the Virtual Machine(s)",
            "unit": "Percent",
            "timeseries": [
                {
                    "metadatavalues": [
                        {
                            "name": {
                                "value": "Microsoft.ResourceId",
                                "localizedValue": "Microsoft.ResourceId"
                            },
                            "value": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/EASTUS-TESTING/providers/Microsoft.Compute/virtualMachines/TestVM1"
                        }
                    ],
                    "data": [
                        {
                            "timeStamp": "2023-06-25T22:35:00Z",
                            "average": 3.2618888888888886
                        },
                        {
                            "timeStamp": "2023-06-26T04:35:00Z",
                            "average": 4.696944444444445
                        },
                        {
                            "timeStamp": "2023-06-26T10:35:00Z",
                            "average": 6.19701388888889
                        },
                        {
                            "timeStamp": "2023-06-26T16:35:00Z",
                            "average": 2.630347222222222
                        },
                        {
                            "timeStamp": "2023-06-26T22:35:00Z",
                            "average": 21.288999999999998
                        }
                    ]
                },
                {
                    "metadatavalues": [
                        {
                            "name": {
                                "value": "Microsoft.ResourceId",
                                "localizedValue": "Microsoft.ResourceId"
                            },
                            "value": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/EASTUS-TESTING/providers/Microsoft.Compute/virtualMachines/TestVM2"
                        }
                    ],
                    "data": [
                        {
                            "timeStamp": "2023-06-25T22:35:00Z",
                            "average": 7.567069444444444
                        },
                        {
                            "timeStamp": "2023-06-26T04:35:00Z",
                            "average": 5.111835883171071
                        },
                        {
                            "timeStamp": "2023-06-26T10:35:00Z",
                            "average": 10.078277777777778
                        },
                        {
                            "timeStamp": "2023-06-26T16:35:00Z",
                            "average": 8.399097222222222
                        },
                        {
                            "timeStamp": "2023-06-26T22:35:00Z",
                            "average": 2.647
                        }
                    ]
                },
                {
                    "metadatavalues": [
                        {
                            "name": {
                                "value": "Microsoft.ResourceId",
                                "localizedValue": "Microsoft.ResourceId"
                            },
                            "value": "/subscriptions/12345678-abcd-98765432-abcdef012345/resourceGroups/Common-TESTING/providers/Microsoft.Compute/virtualMachines/CommonVM1"
                        }
                    ],
                    "data": [
                        {
                            "timeStamp": "2023-06-25T22:35:00Z",
                            "average": 6.892319444444444
                        },
                        {
                            "timeStamp": "2023-06-26T04:35:00Z",
                            "average": 3.5054305555555554
                        },
                        {
                            "timeStamp": "2023-06-26T10:35:00Z",
                            "average": 8.398817802503476
                        },
                        {
                            "timeStamp": "2023-06-26T16:35:00Z",
                            "average": 6.841666666666667
                        },
                        {
                            "timeStamp": "2023-06-26T22:35:00Z",
                            "average": 3.3850000000000002
                        }
                    ]
                }
            ],
            "errorCode": "Success"
        }
    ],
    "namespace": "microsoft.compute/virtualmachines",
    "resourceregion": "eastus"
}

Risoluzione dei problemi relativi alle metriche di query per più risorse

  • Serie temporale vuota restituita "timeseries": []

    • Viene restituita una serie temporale vuota quando non sono disponibili dati per l'intervallo di tempo e il filtro specificati. La causa più comune è specificare un intervallo di tempo che non contiene dati. Ad esempio, se l'intervallo di tempo è impostato su una data futura.
    • Un'altra causa comune consiste nello specificare un filtro che non corrisponde ad alcuna risorsa. Ad esempio, se il filtro specifica un valore di dimensione che non esiste in alcuna risorsa nella combinazione di sottoscrizione e area, "timeseries": [] viene restituito.
  • Filtri con caratteri jolly
    L'uso di un filtro con caratteri jolly, ad esempio Microsoft.ResourceId eq '*', fa sì che l'API restituisca una serie temporale per ogni resourceId nella sottoscrizione e nell'area. Se la combinazione di sottoscrizioni e aree non contiene risorse, viene restituita una serie temporale vuota. La stessa query senza il filtro con caratteri jolly restituirà una singola serie temporale, aggregando la metrica richiesta sulle dimensioni richieste, ad esempio la sottoscrizione e l'area.

  • Errori di autorizzazione 401:
    Le API delle singole metriche delle risorse richiedono che un utente disponga dell'autorizzazione lettore di monitoraggio per la risorsa sottoposta a query. Poiché le API per le metriche a più risorse sono API a livello di sottoscrizione, gli utenti devono avere l'autorizzazione di lettura monitoraggio per la sottoscrizione con query per usare le API per le metriche a più risorse. Anche se gli utenti dispongono di Lettore di monitoraggio su tutte le risorse di una sottoscrizione, la richiesta ha esito negativo se l'utente non dispone del lettore di monitoraggio nella sottoscrizione stessa.

Passaggi successivi