Aracılığıyla paylaş


Azure izleme REST API rehberi

Bu makalede Azure İzleyici REST API başvurusunun nasıl kullanılacağı gösterilmektedir.

Azure İzleyici API'sini kullanarak ölçüm tanımlarını, boyut değerlerini ve ölçüm değerlerini alın ve verileri uygulamalarınızda kullanın veya analiz için bir veritabanında depolayın. Ayrıca Azure İzleyici API'sini kullanarak uyarı kurallarını listeleyebilir ve etkinlik günlüklerini görüntüleyebilirsiniz.

Azure İzleyici isteklerinin kimliğini doğrulama

Azure İzleyici API'si kullanılarak gönderilen istek, Azure Resource Manager kimlik doğrulama modelini kullanır. Tüm isteklerin kimliği Microsoft Entra Id ile doğrulanır. İstemci uygulamasının kimliğini doğrulamaya yönelik bir yaklaşım, bir Microsoft Entra hizmet sorumlusu oluşturmak ve kimlik doğrulama belirteci almaktır. Azure portalı, CLI veya PowerShell kullanarak bir Microsoft Entra hizmet sorumlusu oluşturabilirsiniz. Daha fazla bilgi için Yetkilendirme belirteçleri istemek ve API'lerle çalışmak için bir uygulama kaydetme sayfasına bakın.

Bir belirteç geri al

Hizmet ilkesi oluşturduktan sonra bir erişim belirteci alın. Belirteç isteğinde resource=https://management.azure.com belirtin.

Aşağıdaki yöntemlerden herhangi birini kullanarak bir kimlik doğrulama belirteci alın:

  • CLI
  • REST API
  • SDK

Belirteç isteğinde bulunurken bir resource parametre sağlamanız gerekir. resource parametresi, erişmek istediğiniz kaynağın URL'sidir.

Kaynaklar arasında şunlar bulunur:

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

REST isteği kullanarak belirteç alma

Belirteç almak için aşağıdaki REST API çağrısını kullanın. Bu istek, isteği doğrulamak için bir istemci kimliği ve istemci sır bilgisi kullanır. Uygulamanızı Microsoft Entra ID ile kaydettiğinizde, istemci kimliği ve istemci gizli anahtarı elde edilir. Daha fazla bilgi için Yetkilendirme belirteçleri istemek ve API'lerle çalışmak için bir uygulama kaydetme sayfasına bakın.

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'

Yanıt gövdesi aşağıdaki biçimde görünür:

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

Bir belirtecin kimliğini doğruladıktan ve aldıktan sonra üst bilgisini ekleyerek Azure İzleyici API isteklerinizde erişim belirtecini kullanın 'Authorization: Bearer <access token>'

Uyarı

Azure REST API ile çalışma hakkında daha fazla bilgi için bkz . Azure REST API başvurusu.

Kaynak kimliğini alma

REST API'yi kullanmak için hedef Azure kaynağının kaynak kimliği gerekir. Kaynak kimlikleri aşağıdaki deseni izler:

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

Örneğin:

  • Azure IoT Hub: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Devices/IotHubs/<iot-hub-name>
  • Elastik SQL havuzu: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Sql/servers/<pool-db>/elasticpools/<sql-pool-name>
  • Azure SQL Veritabanı (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/<namespace>/<servicebus-name>
  • Azure Sanal Makine Ölçek Kümeleri: /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Compute/virtualMachineScaleSets/<vm-name>
  • Azure Sanal Makineler: /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>

Kaynak kimliğini bulmak için Azure portalını, PowerShell'i veya Azure CLI'yı kullanın.

Portalda resourceID'yi bulmak için kaynağın genel bakış sayfasında JSON görünümü'nü seçin.

JSON görünümü bağlantısının vurgulandığı bir kaynağın genel bakış sayfasını gösteren ekran görüntüsü.

Kaynak JSON sayfası görüntülenir. Kaynak kimliği, kimliğin sağındaki simge kullanılarak kopyalanabilir.

Bir kaynağın Kaynak JSON sayfasını gösteren ekran görüntüsü.

API uç noktaları

API uç noktaları aşağıdaki deseni kullanır:

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

resource URI aşağıdaki bileşenlerden oluşur:

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

Önemli

Ölçümleri veya ölçüm tanımlarını almak için API çağrısı yaparken, kaynak URI'sinin sonuna /providers/microsoft.insights/ eklemeyi unutmayın.

Ölçüm tanımlarını alma

Bir hizmet için kullanılabilen ölçümlerin listesine erişmek için Azure İzleyici Ölçüm Tanımları REST API'sini kullanın. Ölçüm tanımlarını almak için aşağıdaki istek biçimini kullanın.

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>

Örneğin, aşağıdaki istek bir Azure Depolama hesabı için ölçüm tanımlarını alır:

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

Aşağıdaki JSON örnek yanıt gövdesini gösterir. Bu örnekte yalnızca ikinci ölçümün boyutları vardır:

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

Uyarı

API sürümünü "2018-01-01" veya üzerini kullanmanızı öneririz. Ölçüm tanımları API'sinin eski sürümleri boyutları desteklemez.

Boyut değerlerini alma

Kullanılabilir ölçüm tanımlarını aldıktan sonra ölçümün boyutları için değer aralığını alın. Sorgularınızdaki ölçümleri filtrelemek veya segmentlere ayırmak için boyut değerlerini kullanın. Belirli bir ölçüm boyutu için tüm değerleri bulmak için Azure İzleyici Ölçümleri REST API'sini kullanın.

Filtre tanımlarında ölçümün name.value öğesini kullanın. Filtre belirtilmezse varsayılan ölçüm döndürülür. API yalnızca bir boyutun joker karakter filtresine sahip olmasına izin verir. Sorgu parametresini kullanarak "resultType=metadata" boyut değerleri isteğini belirtin. resultType bir ölçüm değerleri isteği için atlanır.

Uyarı

Azure İzleyici REST API'sini kullanarak boyut değerlerini almak için "2019-07-01" veya sonraki bir API sürümünü kullanın.

Boyut değerlerini almak için aşağıdaki istek biçimini kullanın:

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>

Aşağıdaki örnek, belirli bir zaman aralığında API Name boyutu Transactions değerine sahipse, GeoType metrinin Primary boyutu için yayımlanan boyut değerlerinin listesini alır.

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'

Aşağıdaki JSON örnek yanıt gövdesini gösterir:

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

Ölçüm değerlerini alma

Ölçüm tanımlarını ve boyut değerlerini aldıktan sonra ölçüm değerlerini alın. Ölçüm değerlerini almak için Azure İzleyici Ölçümleri REST API'sini kullanın.

Filtre tanımlarında ölçümün name.value öğesini kullanın. Boyut filtresi belirtilmezse özetlenen ve bir araya getirilen ölçüm döndürülür.

Birden çok zaman serisi

Zaman serisi, belirli bir boyut bileşimi için zamana göre sıralanmış bir veri noktaları kümesidir. Boyut, ölçümün kaynak kimliği, bölge veya ApiName gibi veri noktasını tanımlayan bir yönüdür.

  • Belirli boyut değerlerine sahip birden çok zaman serisini getirmek için, gibi "&$filter=ApiName eq 'ListContainers' or ApiName eq 'GetBlobServiceProperties'"her iki boyut değerini de belirten bir filtre sorgusu parametresi belirtin. Bu örnekte, ApiName'nın ListContainers olduğu bir zaman serisi ve ApiName'nin GetBlobServiceProperties olduğu ikinci bir zaman serisi alırsınız.

  • Belirli bir boyutun her değeri için bir zaman serisi döndürmek için gibi *bir "&$filter=ApiName eq '*'" filtre kullanın. Zaman serisi sayısını sınırlamak ve sıralamak için Top ve OrderBy sorgu parametrelerini kullanın. Bu örnekte, sonuç kümesindeki her değeri ApiNameiçin bir zaman serisi alırsınız. Veri döndürülmezse, API boş bir zaman serisi "timeseries": []döndürür.

Uyarı

Azure İzleyici REST API'sini kullanarak çok boyutlu ölçüm değerlerini almak için "2019-07-01" veya sonraki bir API sürümünü kullanın.

Ölçüm değerlerini almak için aşağıdaki istek biçimini kullanın:

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>

Aşağıdaki örnek, Transactions boyutunun GeoType değerine sahip olduğu 5 dakikalık bir süre boyunca, Primary sayısına göre azalan değer sırasıyla ilk üç API'yi alır:

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'

Aşağıdaki JSON örnek yanıt gövdesini gösterir:

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

Aynı anda birden çok kaynak için ölçümleri sorgulama.

Belirli bir kaynaktaki ölçümleri sorgulamaya ek olarak, bazı kaynak türleri tek bir istekte birden çok kaynağı sorgulamayı da destekler. Bu API'ler , Azure ölçüm gezgininde çok kaynaklı deneyimi güçlendirenlerdir. Birden çok metriğe yönelik sorgulamayı destekleyen kaynak türleri seti, bağlam dikey penceresindeki kapsam seçiminde yer alan kaynak türü açılan menüsü aracılığıyla Azure izleyicisindeki Ölçümler dikey penceresinde görüntülenebilir. Daha fazla bilgi için çok kaynaklı UX belgelerine bakın.

Birden çok ve tek tek kaynakların ölçümlerini sorgulama arasında bazı önemli farklar vardır.

  • Çoklu kaynak API'leri, kaynak kimliği seviyesi yerine abonelik seviyesi üzerinden çalışır. Bu kısıtlama, bu API'leri sorgulayan kullanıcıların aboneliğin kendisinde İzleme Okuyucusu izinlerine sahip olması gerektiği anlamına gelir.
  • Ölçümler çok kaynaklı API'ler sorgu başına yalnızca tek bir resourceType'ı destekler ve bu, ölçüm ad alanı sorgu parametresi biçiminde belirtilmelidir.
  • Ölçümler çok kaynaklı API'ler sorgu başına yalnızca tek bir Azure bölgesini destekler ve bu bölge sorgu parametresi biçiminde belirtilmelidir.

Birden çok kaynak örneği için ölçümleri sorgulama

Aşağıdaki örnekte tek bir ölçüm tanımları isteği gösterilmektedir:

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şağıdaki istek, birden çok kaynak için eşdeğer ölçüm tanımları isteğini gösterir. Tek değişiklikler, kaynak kimliği yolu yerine abonelik yolu ve region ile metricNamespace sorgu parametrelerinin eklenmesidir.

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

Aşağıdaki örnekte tek bir ölçüm isteği gösterilmektedir:

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

Birden çok kaynak için eşdeğer bir ölçüm isteği aşağıdadır:

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

Uyarı

Microsoft.ResourceId eq '*' Çok kaynaklı ölçüm istekleri örneğine bir filtre eklenir. * filtresi, API'ye abonelik ve bölgedeki verileri olan her bir sanal makine kaynağı için ayrı bir zaman serisi geri getirmesini söyler. Filtre olmadan API, tüm VM'ler için ortalama CPU'ları toplayarak tek bir zaman serisi döndürür. Her bir kaynağın zaman serisi, aşağıdaki örnek dönüş değerinde görülebileceği gibi, her bir zaman serisi girdisindeki Microsoft.ResourceId meta veri değeri ile ayırt edilir. Sorgu ile getirilen resourceId yoksa, boş bir zaman dizisi"timeseries": [] döndürülür.

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

Birden çok kaynak için ölçüm sorgulama sorunlarını giderme

  • Boş zaman dilimi döndü "timeseries": []

    • Belirtilen zaman aralığı ve filtre için kullanılabilir veri olmadığında boş bir zaman serisi döndürülür. En yaygın neden, veri içermeyen bir zaman aralığı belirtmektir. Örneğin, zaman aralığı gelecekteki bir tarihe ayarlanmışsa.
    • Başka bir yaygın neden, herhangi bir kaynakla eşleşmeyen bir filtre belirtmektir. Örneğin, filtre, abonelik ve bölge bileşimindeki herhangi bir kaynakta bulunmayan bir boyut değeri belirtirse, "timeseries": [] değeri döndürülür.
  • Joker karakter filtreleri

    gibi Microsoft.ResourceId eq '*' bir joker karakter filtresi kullanmak, API'nin abonelikteki ve bölgedeki her resourceId için bir zaman serisi döndürmesine neden olur. Abonelik ve bölge bileşimi kaynak içermiyorsa boş bir zaman serisi döndürülür. Joker karakter filtresi olmadan yapılacak aynı sorgu, talep edilen metrikleri, abonelik ve bölge gibi talep edilen boyutlar üzerinden toplayarak tek bir zaman serisi döndürür.

  • 401 yetkilendirme hataları

    Tek tek kaynak ölçümleri API'leri, kullanıcının sorgulanan kaynak üzerinde İzleme Okuyucusu iznine sahip olmasını gerektirir. Çoklu kaynak ölçümleri API'leri abonelik düzeyi API'leri olduğundan, kullanıcıların sorgulanan aboneliğin çoklu kaynak ölçümleri API'lerini kullanması için İzleme Okuyucusu iznine sahip olması gerekir. Kullanıcıların abonelikteki tüm kaynaklarda İzleme Okuyucusu olsa bile, kullanıcının aboneliğin kendisinde İzleme Okuyucusu yoksa istek başarısız olur.

  • 529 sınırlama hataları

    529 hata kodu, ölçüm arka uç sisteminin şu anda isteklerinizi sınırladığını gösterir. Önerilen eylem, üstel gecikmeli tekrar deneme şeması uygulamaktır. Azaltma hakkında daha fazla bilgi için Azure Resource Manager'ın istekleri nasıl kısıtladığını anlayın bölümüne bakın.

Sonraki Adımlar