Azure Monitor REST API のチュートリアル

この記事では、Azure Monitor REST API リファレンスを使用する方法について説明します。 これらの API は、さまざまなAzure Monitor機能のAzure Resource Manager (ARM) コントロール プレーン API の一部です。

Azure Monitor API を使用して、メトリック定義、ディメンション値、メトリック値を取得します。 アプリケーション内のデータを使用するか、分析のためにデータベースに格納します。 Azure Monitor API を使用してアラート ルールを一覧表示し、アクティビティ ログを表示します。

Azure Monitor要求を認証する

Azure Monitor API を使用して送信された要求は、Azure Resource Manager認証モデルを使用します。 Microsoft Entra IDは、すべての要求を認証します。 クライアント アプリケーションを認証する方法の 1 つは、Microsoft Entra サービス プリンシパルを作成し、認証トークンを取得することです。 Azure ポータル、CLI、または PowerShell を使用して、Microsoft Entra サービス プリンシパルを作成します。 詳細については、「承認トークンを要求し、API を操作するために、アプリを登録する」を参照してください。

トークンを取得する

サービス プリンシパルの作成が完了したら、アクセス トークンを取得します。 トークン要求のhttps://management.azure.com/.defaultとしてscopeを使用します。

次のいずれかの方法を使用して認証トークンを取得します。

  • CLI
  • REST API
  • SDK

REST 要求を使用してトークンを取得する

トークンを取得するには、次の REST API 呼び出しを使用します。 この要求では、クライアント ID とクライアント シークレットを使用して要求を認証します。 クライアント ID とクライアント シークレットは、アプリケーションを Microsoft Entra ID に登録するときに取得されます。 詳細については、「承認トークンを要求し、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={resource URI of the service you want to access, e.g. https://monitoring.azure.com>'}'

応答本文は、次の形式で表示されます。

{
    "token_type": "Bearer",
    "expires_in": "86399",
    "ext_expires_in": "86399",
    "expires_on": "1672826207",
    "not_before": "1672739507",
    "resource": "{resource URI of the service you want to access, e.g. https://monitoring.azure.com>'}",
    "access_token": "eyJ0eXAiOiJKV1Qi....gpHWoRzeDdVQd2OE3dNsLIvUIxQ"
}

トークンを認証して取得した後、ヘッダー 'Authorization: Bearer <access token>'を含めることで、Azure Monitor API 要求でアクセス トークンを使用します。

Azure REST API の操作の詳細については、Azure REST API リファレンスを参照してください。

リソース ID の取得

REST API を使用するには、ターゲット Azure リソースのリソース ID が必要です。 リソース ID は次のパターンに従っています。

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

例えば次が挙げられます。

  • Azure IoT Hub: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft/Devices/IotHubs/<iot-hub-name>
  • Elastic SQL プール: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Sql/servers/<pool-db>/elasticpools/<sql-pool-name>
  • Azure SQL Database (v12): /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft。Sql/servers/<server-name>/databases/<database-name>
  • Azure Service Bus: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft。ServiceBus/namespaces/<namespace>/<servicebus-name>
  • Azure Virtual Machine Scale Sets: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft/Compute/virtualMachineScaleSets/<vm-name>
  • Azure 仮想マシン: /subscriptions/subscription-id</resourceGroups/>resource-group-name</providers/Microsoft.Compute/virtualMachines/>vm-name<
  • Azure Event Hubs: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft。EventHub/namespaces/<eventhub-namespace>

Azure ポータル、PowerShell、またはAzure CLIを使用して、リソース ID を検索します。

ポータルで resourceID を見つけるには、リソースの概要ページから JSON ビューを選択します。

[JSON ビュー] リンクが強調表示されているリソースの概要ページを示すスクリーンショット。

[リソース JSON] ページが開きます。 ID の右側にあるコピー アイコンを選択します。

リソースの [リソース JSON] ページを示すスクリーンショット。

API エンドポイント

API エンドポイントでは、次のパターンが使用されます。

/<resource URI>/providers/Microsoft.Insights/<metrics|metricDefinitions>?api-version=<apiVersion>

resource URI は次の要素から構成されます。

/subscriptions/<subscription id>/resourcegroups/<resourceGroupName>/providers/<resourceProviderNamespace>/<resourceType>/<resourceName>/

Von Bedeutung

メトリックまたはメトリック定義を取得するには、API 呼び出しのリソース URI の後に /providers/Microsoft.Insights/ を含めます。

メトリック定義の取得

Azure Monitor メトリック定義 REST API を使用して、サービスで使用可能なメトリックの一覧にアクセスします。 メトリック定義を取得するには、次の要求形式を使用します。

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>

たとえば、次の要求は、Azure Storage アカウントのメトリック定義を取得します。

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'

次の JSON は、応答例の本文を示しています。 この例では、ディメンションを持つのは 2 番目のメトリックだけです。

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

API バージョン "2018-01-01" 以降を使用することをお勧めします。 以前のバージョンのメトリック定義 API ではディメンションがサポートされていません。

ディメンション値を取得する

使用可能なメトリック定義を取得した後、メトリックのディメンションの値の範囲を取得します。 ディメンション値を使用して、クエリのメトリックをフィルター処理またはセグメント化します。 Azure Monitor Metrics REST API を使用して、特定のメトリック ディメンションのすべての値を検索します。

フィルター定義でメトリックの name.value 要素を使用します。 フィルターを指定しない場合は、既定のメトリックが返されます。 この API では、1 つのディメンションでのみ、ワイルドカード フィルターを使用できます。 "resultType=metadata" クエリ パラメーターを使用して、ディメンション値の要求を指定します。 メトリック値の要求では、resultType は省略されます。

Azure Monitor REST API を使用してディメンション値を取得するには、API バージョン "2019-07-01" 以降を使用します。

ディメンション値を取得するには、次の要求形式を使用します。

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>

次の例では、API Name メトリックの Transactions ディメンションに対して出力されたディメンション値で、GeoType ディメンションの値が、指定された時間範囲に対して 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-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'

次の JSON は、応答本文の例を示しています。

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

メトリック値の取得

メトリック定義とディメンション値を取得したら、メトリック値を取得します。 メトリック値を取得するには、Azure Monitor Metrics REST API を使用します。

フィルター定義でメトリックの name.value 要素を使用します。 ディメンション フィルターが指定されていない場合、ロール アップされた集計メトリックが返されます。

複数の時系列

時系列とは、所与のディメンションの組み合わせに対する一連のデータ ポイントを時間順に並べたものです。 ディメンションは、リソース ID、リージョン、ApiName などのデータ ポイントを記述するメトリックの側面です。

  • 特定のディメンション値を持つ複数の時系列をフェッチするには、 "&$filter=ApiName eq 'ListContainers' or ApiName eq 'GetBlobServiceProperties'"などの両方のディメンション値を含むフィルター クエリ パラメーターを指定します。 この例では、ApiNameListContainers である時系列を取得し、ApiNameGetBlobServiceProperties である別の時系列を取得します。

  • 特定のディメンションのあらゆる値に対して時系列を返すには、* のような "&$filter=ApiName eq '*'" フィルターを使用します。 クエリ パラメーター TopOrderBy を使用して、返される時系列の数を制限するとともに並べ替えます。 この例では、結果セット内の ApiName の値ごとに時系列を取得します。 返されるデータがない場合は、API から空の時系列 "timeseries": [] が返されます。

Azure Monitor REST API を使用して多次元メトリック値を取得するには、API バージョン "2019-07-01" 以降を使用します。

メトリック値を取得するには、次の要求形式を使用します。

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=<aggregation>&api-version=<apiVersion>
Host: management.azure.com
Content-Type: application/json
Authorization: Bearer <access token>

次の表では、メトリックとディメンション値の要求の主要なクエリ パラメーターについて説明します。

パラメーター Description
resultType メトリック データの代わりにディメンション値を返すには、 metadata に設定します。 メトリック値要求では、このパラメーターを省略します。
interval 返されたデータの集計間隔 (タイム グレイン) (ISO 8601 期間形式) (1 分間の PT1M や 1 時間の PT1H など)。
aggregation メトリックに適用する集計 ( TotalAverageMinimumMaximumCountなど)。
top ディメンションで結果をセグメント化するときに返される時系列の最大数。
orderby Total descなど、返される時系列の順序付けに使用される集計と並べ替えの方向。

次の例では、Transactions ディメンションの値が GeoType である 5 分間に、上位 3 つの API を降順の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=GeoType eq '\''Primary'\'' and ApiName eq '\''*'\''&interval=PT1M&aggregation=Total&top=3&orderby=Total desc&api-version=2019-07-01' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer yJ0eXAiOi...g1dCI6Ii1LS'

次の JSON は、応答本文の例を示しています。

{
  "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-03-01T02:00:00Z",
              "total": 2
            },
            {
              "timeStamp": "2023-03-01T02:01:00Z",
              "total": 1
            },
            {
              "timeStamp": "2023-03-01T02:02:00Z",
              "total": 3
            },
            {
              "timeStamp": "2023-03-01T02:03:00Z",
              "total": 7
            },
            {
              "timeStamp": "2023-03-01T02:04:00Z",
              "total": 2
            }
          ]
        },
        ...
      ]
    }
  ],
  "namespace": "Microsoft.Storage/storageAccounts",
  "resourceregion": "eastus"
}

一度に複数のリソースのメトリックのクエリを実行する

個々のリソースのメトリックのクエリに加えて、一部のリソースの種類では、1 つの要求内の複数のリソースのクエリもサポートされています。 これらの API は、Azure メトリック エクスプローラー で、複数リソースのエクスペリエンスを提供します。 コンテキスト ブレードのスコープ セレクターのリソースの種類ドロップダウンを使用して、Azure Monitorの [メトリック] ブレードで複数のリソースのクエリをサポートするリソースの種類のセットを表示できます。 詳細については、 マルチリソース UX のドキュメントを参照してください

複数のリソースと個々のリソースのメトリックのクエリには、いくつかの重要な違いがあります。

  • メトリック マルチリソース API は、リソース ID レベルではなくサブスクリプション レベルで動作します。 この制限は、これらの API に対してクエリを実行するユーザーが、サブスクリプション自体に対する監視閲覧者の権限を持っている必要があることを意味します。
  • メトリック マルチリソース API では、クエリごとに 1 つの resourceType のみがサポートされます。これは、メトリック名前空間クエリ パラメーターの形式で指定する必要があります。
  • メトリックマルチリソース API では、クエリごとに 1 つの Azure リージョンのみがサポートされます。これは、リージョン クエリ パラメーターの形式で指定する必要があります。

複数のリソースに対するメトリックのクエリの例

次の例は、個々のメトリック定義要求を示しています。

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

次の要求は、複数のリソースに対する同等のメトリック定義要求を示しています。 変更点は、リソース ID パスがサブスクリプション パスになったことと、region および 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

次の例は、個々のメトリック要求を示しています。

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

複数のリソースに対する同等のメトリック要求を次に示します。

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

この例では、Microsoft.ResourceId eq '*' フィルターが複数リソース メトリック要求に追加されます。 この * フィルターを指定すると、サブスクリプションとリージョンのデータが存在する仮想マシン リソースのそれぞれについて 1 つの独立した時系列が API から返されます。 フィルターがないと、API はすべての VM の平均 CPU を集計した 1 つの時系列を返します。 各リソースの時系列は、次のサンプル戻り値に示すように、各時系列エントリの Microsoft.ResourceId メタデータ値によって区別されます。 このクエリでリソース ID が取得されない場合、空の時系列 "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"
}

複数のリソースに対するメトリックのクエリのトラブルシューティング

  • 時系列が空のため"timeseries": []が返されました。

    • 指定した時間の範囲とフィルターで利用可能なデータがない場合、空の時系列が返されます。 最も一般的な原因は、データを含まない時間の範囲を指定することです。 たとえば、時間の範囲を将来の日付に設定した場合などです。
    • もう 1 つのよくある原因は、どのリソースにも一致しないフィルターを指定することです。 たとえば、サブスクリプションとリージョンの組み合わせのどのリソースにも存在しないディメンション値がフィルターで指定されている場合、API は "timeseries": []を返します。
  • ワイルドカード フィルター

    Microsoft.ResourceId eq '*' などのワイルドカード フィルターを使用すると、API はサブスクリプションとリージョン内のすべての resourceId の時系列を返します。 サブスクリプションとリージョンの組み合わせにリソースが含まれない場合、空の時系列が返されます。 ワイルドカード フィルターを使用しない同じクエリは、サブスクリプションやリージョンなど、要求されるディメンジョン経由で要求されたメトリックを集約した単一の時系列を返します。

  • 401 承認エラー

    個別リソース メトリック API は、ユーザーがクエリ対象のリソースに対する監視閲覧者権限を持っていることを必要とします。 複数リソース メトリック API はサブスクリプション レベルの API であるため、ユーザーは、複数リソース メトリック API を使用するために、クエリ対象のサブスクリプションの監視閲覧者権限を持っている必要があります。 ユーザーがサブスクリプションのすべてのリソースに対して監視閲覧者権限を持っている場合でも、ユーザーがサブスクリプション自体に対する監視閲覧者権限を持っていないと、要求は失敗します。

  • 529 調整エラー

    529 エラー コードは、メトリック バックエンドが現在要求を調整していることを示します。 推奨されるアクションは、指数バックオフ再試行スキームを実装することです。 調整の詳細については、「Azure Resource Managerが要求を調整する方法についてを参照してください。