Partilhar via


Passo a passo da API REST de monitoramento do Azure

Esse artigo mostra como usar a Referência de API REST do Azure Monitor.

Recupere definições de métrica, valores de dimensão e valores de métrica usando a API do Azure Monitor e use os dados em seus aplicativos ou armazene em um banco de dados para análise. Você também pode listar regras de alerta e exibir logs de atividades usando a API do Azure Monitor.

Autenticar solicitações do Azure Monitor

Solicitação enviada usando a API do Azure Monitor usam o modelo de autenticação do Azure Resource Manager. Todas as solicitações são autenticadas com o Microsoft Entra ID. Uma abordagem para autenticar o aplicativo cliente é criar uma entidade de serviço do Microsoft Entra e recuperar o token de autenticação. Você pode criar uma entidade de serviço do Microsoft Entra usando o portal do Azure, a CLI ou o PowerShell. Para obter mais informações, confira Registrar um aplicativo para solicitar tokens de autorização e trabalhar com APIs.

Recuperar um token

Depois de criar uma entidade de serviço, recupere um token de acesso. Especifique resource=https://management.azure.com na solicitação do token.

Obtenha um token de autenticação usando qualquer um dos métodos a seguir:

  • CLI
  • API REST
  • .

Ao solicitar um token, você deve fornecer um parâmetro resource. O parâmetro resource é a URL do recurso que você deseja acessar.

Os recursos incluem:

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

Obter um token usando uma solicitação REST

Use a seguinte chamada da API REST para obter um token. Essa solicitação usa uma ID de cliente e um segredo do cliente para autenticar a solicitação. A ID do cliente e o segredo do cliente são obtidos quando você registra seu aplicativo com o Microsoft Entra ID. Para obter mais informações, consulte Registrar um Aplicativo para solicitar tokens de autorização e trabalhar com APIs

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'

O corpo da resposta aparece no seguinte formato:

{
    "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"
}

Depois de autenticar e recuperar um token, use o token de acesso em suas solicitações de API do Azure Monitor, incluindo o cabeçalho 'Authorization: Bearer <access token>'

Observação

Para obter mais informações sobre como trabalhar com a API REST do Azure, consulte a Referência da API REST do Azure.

Recuperar a ID do recurso

O uso da API REST requer a ID do recurso de destino do Azure. As IDs de recurso seguem o seguinte padrão:

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

Por exemplo

  • Hub IoT do Azure: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Devices/IotHubs/<iot-hub-name>
  • Pool de SQL Elástico: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Sql/servers/<pool-db>/elasticpools/<sql-pool-name>
  • Banco de Dados SQL do Azure (v12): /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Sql/servers/<server-name>/databases/<database-name>
  • Barramento de Serviço do Azure: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ServiceBus/<namespace>/<servicebus-name>
  • Conjuntos de Dimensionamento de Máquinas Virtuais do Microsoft Azure: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachineScaleSets/<vm-name>
  • Máquinas Virtuais do Microsoft Azure: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachines/<vm-name>
  • Hubs de Eventos do Azure: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.EventHub/namespaces/<eventhub-namespace>

Use o portal do Azure, o PowerShell ou a CLI do Azure para localizar a ID do recurso.

Para localizar o resourceID no portal, na página de visão geral do recurso, selecione Exibição JSONUma captura de tela mostrando a página de visão geral de um recurso com o link Exibição JSON destacado.

A página JSON do recurso é exibida. A ID do recurso pode ser copiada usando o ícone à direita da ID.

Uma captura de tela mostrando a página Recurso JSON para um recurso.

Pontos de extremidade de API

Os pontos de extremidade da API utilizam o seguinte padrão:
/<resource URI>/providers/microsoft.insights/<metrics|metricDefinitions>?api-version=<apiVersion>
O resource URI é composto pelos seguintes componentes:
/subscriptions/<subscription id>/resourcegroups/<resourceGroupName>/providers/<resourceProviderNamespace>/<resourceType>/<resourceName>/

Importante

Verifique se você incluiu /providers/microsoft.insights/ após o URI do recurso quando fizer uma chamada à API para recuperar as métricas ou definições de métricas.

Recuperar as definições de métrica

Use a API REST de Definições de Métrica do Azure Monitor para acessar a lista de métricas disponíveis para um serviço. Use o seguinte formato de solicitação para recuperar definições de métrica.

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>

Por exemplo, a solicitação a seguir recupera as definições de métrica para uma conta de Armazenamento do 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

O JSON a seguir mostra um exemplo de corpo de resposta. Nesse exemplo, apenas a segunda métrica tem dimensões.

{
    "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"
                }
            ]
        },
        ...
    ]
}

Observação

É recomendável usar a versão da API “2018-01-01” ou posterior. Versões mais antigas da API de definições de métrica não dão suporte à dimensões.

Recuperar valores de dimensão

Depois de recuperar as definições de métrica disponíveis, recupere o intervalo de valores para as dimensões da métrica. Use valores de dimensão para filtrar ou segmentar as métricas em suas consultas. Use a API REST de Métricas do Azure Monitor para encontrar todos os valores para uma determinada dimensão de métrica.

Use o elemento name.value da métrica nas definições de filtro. Se nenhum filtro for especificado, a métrica padrão será retornada. A API permite que apenas uma dimensão tenha um filtro curinga. Especifique a solicitação de valores de dimensão usando o "resultType=metadata" parâmetro de consulta. O resultType é omitido para uma solicitação de valores de métrica.

Observação

Para recuperar os valores de dimensão usando a API REST do Azure Monitor, use a versão da API “2019-07-01” ou posterior.

Use o seguinte formato de solicitação para recuperar valores de dimensão.

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>

O exemplo a seguir recupera a lista de valores de dimensão que foram emitidos para a API Name dimensão da Transactions métrica, em que a GeoType dimensão tem um valor de Primary, para o intervalo de tempo especificado.

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'

O JSON a seguir mostra um exemplo de corpo de resposta.

{
  "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"
}

Recuperar valores de métrica

Depois de recuperar os valores de dimensão e definições, recupere os valores da métrica. Use a API REST de Métricas do Azure Monitor para recuperar os valores de métrica.

Use o elemento name.value da métrica nas definições de filtro. Se nenhum filtro de dimensão for especificado, a métrica agregada, acumulada será retornada.

Várias séries temporais

Uma série temporal é um conjunto de pontos de dados que são ordenados por tempo para uma determinada combinação de dimensões. Uma dimensão é um aspecto da métrica que descreve o ponto de dados, como ID do recurso, região ou ApiName.

  • Para buscar várias séries temporais com valores de dimensão específicos, especifique um parâmetro de consulta de filtro que especifica os dois valores de dimensão, como "&$filter=ApiName eq 'ListContainers' or ApiName eq 'GetBlobServiceProperties'". Neste exemplo, você deverá obter uma série temporal em que ApiName é ListContainers e uma segunda série temporal em que ApiName é GetBlobServiceProperties.
  • Para retornar uma série temporal para cada valor de uma determinada dimensão, use um filtro *, como "&$filter=ApiName eq '*'". Use os parâmetros de consulta Top e OrderBy para limitar e classificar o número de séries temporais retornadas. Neste exemplo, você obtém uma série temporal para cada valor de ApiName no conjunto de resultados. Se nenhum dado for retornado, a API retornará uma série temporal vazia "timeseries": [].

Observação

Para recuperar valores de métricas multidimensionais usando a API REST do Azure Monitor, use a versão da API “2019-07-01” ou posterior.

Use o seguinte formato de solicitação para recuperar valores de métrica.

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>

O exemplo a seguir recupera as três principais APIs, pelo número de Transactions em ordem de valor decrescente, durante um intervalo de 5 minutos, em que a GeoType dimensão tem um valor de 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'

O JSON a seguir mostra um exemplo de corpo de resposta.

{
  "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"
}

Consulta de métricas para vários recursos ao mesmo tempo.

Além da consulta de métricas em um recurso individual, alguns tipos de recursos também têm suporte para a consulta de vários recursos em uma única solicitação. Essas APIs são o que potencializa a experiência de Vários Recursos no explorador de métricas do Azure. O conjunto de tipos de recursos que têm suporte para a consulta de várias métricas pode ser visto na folha Métricas no Azure Monitor através da lista suspensa de tipos de recursos no seletor de escopo na folha de contexto. Para obter mais informações, consulte a documentação da UX de Vários Recursos.

Há algumas diferenças importantes entre a consulta de métricas para vários recursos e para recursos individuais.

  • As APIs de vários recursos de Métricas operam no nível da assinatura em vez de no nível da ID do recurso. Essa restrição significa que os usuários que consultam essas APIs devem ter as permissões de Leitor de Monitoramento na própria assinatura.
  • As APIs de vários recursos de métricas dão suporte a apenas um único resourceType por consulta, que deve ser especificado na forma de um parâmetro de consulta de namespace de métrica.
  • As APIs de vários recursos de Métricas suportam apenas uma única região do Azure por consulta, que deve ser especificada na forma de um parâmetro de consulta de região.

Exemplos de consulta de métricas para vários recursos

O exemplo a seguir mostra uma solicitação de definições de métricas por pessoa:

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

A solicitação a seguir mostra a solicitação de definições de métricas equivalentes para vários recursos. As únicas alterações são o caminho da assinatura em vez de um caminho de ID de recurso e a adição dos parâmetros de consulta 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

O exemplo a seguir mostra uma solicitação de métricas individuais.

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

Abaixo está uma solicitação de métricas equivalente para vários recursos:

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

Observação

Um filtro Microsoft.ResourceId eq '*' é adicionado no exemplo para as solicitações de métricas de vários recursos. O filtro * informa à API para retornar uma série temporal separada para cada recurso de máquina virtual que tenha dados na assinatura e na região. Sem o filtro, a API retornaria uma única série temporal agregando a CPU média de todas as VMs. A série temporal de cada recurso é diferenciada pelo valor de metadados Microsoft.ResourceId em cada entrada de série temporal, como pode ser visto no seguinte exemplo de valor de retornado. Se não houver resourceIds recuperados por esta consulta, uma série temporal vazia "timeseries": [] será retornada.

{
    "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"
}

Solucionar problemas de métricas de consulta para vários recursos

  • Série temporal vazia retornada "timeseries": []

    • Uma série temporal vazia é retornada quando nenhum dado está disponível para o intervalo de tempo e o filtro especificados. A causa mais comum é a especificação de um intervalo de tempo que não contém nenhum dado. Por exemplo, se o intervalo de tempo estiver definido para uma data futura.
    • Outra causa comum é a especificação de um filtro que não corresponda a nenhum recurso. Por exemplo, se o filtro especificar um valor de dimensão que não existe em nenhum recurso na combinação entre assinatura e região, "timeseries": [] será retornado.
  • Filtros de caracteres curinga
    Usar um filtro de caracteres curinga, como Microsoft.ResourceId eq '*', faz com que a API retorne uma série temporal para cada resourceId na assinatura e região. Se a combinação entre assinatura e região não contiver nenhum recurso, uma série temporal vazia será retornada. A mesma consulta sem o filtro de caracteres curinga retornaria uma única série temporal, agregando a métrica solicitada nas dimensões solicitadas, como, por exemplo, assinatura e região.

  • Erros de autorização 401:
    As APIs de métricas de recurso individuais exigem que um usuário tenha a permissão Leitor de Monitoramento no recurso que está sendo consultado. Como as APIs de métricas de vários recursos são APIs de nível de assinatura, os usuários devem ter a permissão Leitor de Monitoramento para que a assinatura consultada use as APIs de métricas de vários recursos. Mesmo que os usuários tenham o Leitor de Monitoramento em todos os recursos de uma assinatura, a solicitação falhará se o usuário não tiver o Leitor de Monitoramento na própria assinatura.

Próximas etapas