Udostępnij za pośrednictwem


Eksportowanie metryk za pomocą reguł zbierania danych (wersja zapoznawcza)

Reguły zbierania danych (DCR) służą do zbierania danych monitorowania z zasobów platformy Azure. Aby uzyskać listę scenariuszy zbierania danych, zobacz Reguły zbierania danych — omówienie. Teraz możesz używać kontrolerów domeny do zbierania i eksportowania metryk platformy.

Obecnie metryki platformy można zbierać przy użyciu ustawień DCR i diagnostycznych. Rosnąca liczba zasobów obsługuje eksportowanie metryk przy użyciu kontrolerów domeny. Zobacz Obsługiwane zasoby i regiony , aby uzyskać listę zasobów pomocniczych.

Eksportowanie metryk przy użyciu kontrolerów domeny zapewnia następujące korzyści w porównaniu z ustawieniami diagnostycznymi:

  • Konfiguracja kontrolera domeny umożliwia eksportowanie metryk z wymiarami.
  • Konfiguracja kontrolera domeny umożliwia filtrowanie na podstawie nazwy metryki — dzięki czemu można eksportować tylko potrzebne metryki.
  • Kontrolery domeny są bardziej elastyczne i skalowalne w porównaniu z ustawieniami diagnostycznymi.
  • Opóźnienie końcowe dla kontrolerów domeny wynosi w ciągu 3 minut. Jest to poważna poprawa ustawień diagnostycznych, w których opóźnienie eksportu metryk wynosi 6–10 minut.

Eksportowanie metryk za pośrednictwem kontrolerów domeny służy do ciągłego eksportowania danych metryk. Do wykonywania zapytań dotyczących danych historycznych użyj interfejsu API batch metryk płaszczyzny danych. Aby zapoznać się z porównaniem dwóch usług, zobacz Zapytanie interfejsu API usługi Batch metryk płaszczyzny danych i eksportowanie metryk.

Tworzenie kontrolerów domeny dla metryk przy użyciu interfejsu API REST, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell. Aby uzyskać informacje na temat tworzenia żądań DCR na potrzeby eksportowania metryk, zobacz Tworzenie reguł zbierania danych dla metryk.

Podczas tworzenia kontrolera domeny należy utworzyć skojarzenie reguły zbierania danych (DCRA), aby skojarzyć kontroler domeny z zasobem, który ma być monitorowany. Można utworzyć pojedynczy kontroler domeny dla wielu typów zasobów. Aby uzyskać informacje na temat tworzenia usługi DCRA, zobacz Create data collection rule associations (Tworzenie skojarzeń reguł zbierania danych). W przypadku korzystania z witryny Azure Portal funkcja DCRA jest tworzona automatycznie.

Uwaga

W tym samym czasie można używać kontrolerów domeny i ustawień diagnostycznych. Zalecamy wyłączenie ustawień diagnostycznych metryk w przypadku używania kontrolerów domeny w celu uniknięcia zduplikowanych kolekcji danych.

Eksportowanie miejsc docelowych

Metryki można wyeksportować do jednego z następujących miejsc docelowych na kontroler domeny:

  • Obszary robocze usługi Log Analytics.
    Eksportowanie do obszarów roboczych usługi Log Analytics może znajdować się w różnych regionach. Obszar roboczy usługi Log Analytics i kontroler domeny muszą znajdować się w tym samym regionie, ale monitorowane zasoby mogą znajdować się w dowolnym regionie. Metryki wysyłane do obszaru roboczego usługi Log Analytics są przechowywane w AzureMetricsV2 tabeli.

  • Konta usługi Azure Storage.
    Konto magazynu, kontroler domeny i monitorowane zasoby muszą znajdować się w tym samym regionie.

  • Event Hubs.
    Usługi Event Hubs, DCR i monitorowane zasoby muszą znajdować się w tym samym regionie.

Aby zapoznać się z przykładem danych w każdym miejscu docelowym, zobacz Wyeksportowane dane.

Uwaga

Opóźnienie eksportowania metryk wynosi około 3 minut. Poczekaj do 15 minut, aby metryki zaczęły pojawiać się w miejscu docelowym po początkowej konfiguracji.

Ograniczenia

Kontrolery domeny dla eksportu metryk mają następujące ograniczenia:

  • Na dcR można określić tylko jeden typ docelowy.
  • Z pojedynczym zasobem platformy Azure można skojarzyć maksymalnie 5 kontrolerów domeny.
  • Eksportowanie metryk przez kontroler domeny nie obsługuje eksportowania metryk godzinowych.

Obsługiwane zasoby i regiony

Następujące zasoby obsługują eksportowanie metryk przy użyciu reguł zbierania danych:

Typ zasobu Specyfikacja strumienia
Zestawy skalowania maszyn wirtualnych Microsoft.compute/virtualmachinescalesets
Maszyny wirtualne Microsoft.compute/virtualmachines
Redis Cache Microsoft.cache/redis
Koncentratory IOT Microsoft.devices/iothubs
Magazyny kluczy Microsoft.keyvault/vaults
Konta magazynu Microsoft.storage/storageaccounts
Microsoft.storage/Storageaccounts/blobservices
Microsoft.storage/storageaccounts/fileservices
Microsoft.storage/storageaccounts/queueservices
Microsoft.storage/storageaccounts/tableservices
SQL Server Microsoft.sql/serwery
Microsoft.sql/serwery/bazy danych
Operational Insights Microsoft.operationalinsights/workspaces
Usługi multimediów Microsoft.media/mediaservices
Microsoft.media/mediaservices/streamingendpoints
Microsoft.media/mediaservices/liveevents
Ochrona danych Microsoft.dataprotection/backupvaults
Azure Kubernetes Service Microsoft.ContainerService/managedClusters

Obsługiwane regiony

Możesz utworzyć kontroler domeny dla eksportu metryk w dowolnym regionie, ale zasoby, z których chcesz wyeksportować metryki, muszą znajdować się w jednym z następujących regionów:

  • Australia Wschodnia
  • Środkowe stany USA
  • CentralUsEuap
  • South Central US
  • East US
  • Wschodnie stany USA 2
  • Eastus2Euap
  • Zachodnie stany USA
  • Zachodnie stany USA 2
  • Europa Północna
  • West Europe
  • Południowe Zjednoczone Królestwo

Specyfikacje dcR

Reguły zbierania danych są definiowane w obiekcie JSON. Następujące właściwości są wymagane do utworzenia kontrolera domeny na potrzeby eksportowania metryk.

Właściwości opis
dataSources.platformTelemetry.streams Wyświetla listę typów zasobów i metryk. Określ Metrics-Group-All , aby zebrać wszystkie metryki dla zasobu lub określić poszczególne metryki. Format: <resource type>:Metrics-Group-All | <metric name>
Na przykład Microsoft.Compute/virtualMachines:Percentage CPU
dataSources.platformTelemetry.name Nazwa źródła danych.
destinations Miejsce docelowe metryk. Obsługiwane jest tylko jedno miejsce docelowe dla kontrolera domeny.
Prawidłowe typy miejsc docelowych:
storageAccounts
logAnalytics
eventHubs
dataflows.streams Lista strumieni, które mają być przekazywane do miejsca docelowego w formacie: <resource type>:Metrics-Group-All |<metric name>
Na przykład Microsoft.Compute/virtualMachines:Percentage CPU"
dataflows.destinations Miejsce docelowe przekazywania strumieni do zgodnie z definicją destinations we właściwości .
identity.type Typ tożsamości, który ma być używany dla kontrolera domeny. Wymagane dla miejsc docelowych konta magazynu.
Prawidłowe wartości:
systemAssigned
userAssigned
kind Rodzaj reguły zbierania danych. Ustaw wartość na PlatformTelemetry dla eksportu metryk.
location Lokalizacja kontrolera domeny.

Uwaga

Na dcR można określić tylko jeden typ docelowy.

Format JSON dla eksportu metryk DCR

Użyj formatu w następującym ogólnym obiekcie JSON, aby utworzyć kontroler domeny na potrzeby eksportu metryk. Usuń niechciane miejsca docelowe podczas kopiowania przykładu.

{
    "properties": {
        "dataSources": {
            "platformTelemetry": [
                {
                    "streams": [
                    // a list of resource types and metrics to collect metrics from
                        "<resourcetype>:<metric name> | Metrics-Group-All", 
                        "<resourcetype>:<metric name> | Metrics-Group-All"
                    ],
                    "name": "<data sources name>"
                }
            ]
        },
        "destinations": {
            // Choose a single destination type of either logAnalytics, storageAccounts, or eventHubs
            "logAnalytics": [
                {
                    "workspaceResourceId": "workspace Id",
                    "name": "<destination name>"
                }
            ],    
            "storageAccounts": [
                {
                    "storageAccountResourceId": "<storage account Id>", 
                    "containerName": "<container name>",
                    "name": "<destination name>"
                }
            ],
            "eventHubs": [ 
                 { 
                    "eventHubResourceId": "event hub id", 
                     "name": "<destination name>" 
                 } 
             ],     },
        "dataFlows": [
            {
                "streams": [
                 // a list of resource types and metrics to pass to the destination
                        "<resourcetype>:<metric name> | Metrics-Group-All", 
                        "<resourcetype>:<metric name> | Metrics-Group-All"               
                         ],
                "destinations": [
                    "<destination name>"               
                ]
            }
        ]
    },
    // identity is required for Storage Account and Event Hubs destinations
    "identity": {
         "type": "userassigned", 
         "userAssignedIdentities": { 
					 "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.ManagedIdentity/userAssignedIdentities/DRCIdentity": {} 
         }    
    },
"kind": "PlatformTelemetry",
    "location": "eastus"
}

Uwaga

Podczas tworzenia kontrolera domeny na potrzeby eksportowania metryk przy użyciu interfejsu wiersza polecenia , kindlocation, i identity są przekazywane jako argumenty i muszą zostać usunięte z obiektu JSON.

Tożsamości przypisane przez użytkownika i system

Tożsamości przypisane przez użytkownika i system są obsługiwane podczas tworzenia kontrolerów domeny. Tożsamość jest wymagana dla lokalizacji docelowych konta magazynu i usługi Event Hubs. Można użyć tożsamości przypisanej przez system lub przypisanej przez użytkownika. Aby uzyskać więcej informacji, zobacz Przypisywanie ról platformy Azure do tożsamości zarządzanej.

Aby użyć tożsamości przypisanej przez system, dodaj identity obiekt w następujący sposób:

    "identity": {
         "type": "systemAssigned"
    },

Aby użyć tożsamości przypisanej przez użytkownika, dodaj identity obiekt w następujący sposób:

    "identity": {
         "type": "userassigned", 

         "userAssignedIdentities": { 
           "/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity name>": {} 
         }    

    }

Filtrowanie metryk

Podczas określania metryk do wyeksportowania można filtrować metryki według nazwy lub zażądać wszystkich metryk przy użyciu polecenia Metrics-Group-All. Aby uzyskać listę obsługiwanych metryk, zobacz Obsługiwane metryki i kategorie dzienników według typu zasobu.

Aby określić więcej niż jedną metrykę z tego samego typu zasobu, utwórz oddzielny element strumienia dla każdej metryki.

W poniższym przykładzie pokazano, jak filtrować metryki według nazwy.

{
    "properties": {
        "dataSources": {
            "platformTelemetry": [
                {
                    "streams": [
                        "Microsoft.Compute/virtualMachines:Percentage CPU",
                        "Microsoft.Compute/virtualMachines:Disk Read Bytes",
                        "Microsoft.Compute/virtualMachines:Inbound Flows",  
                        "Microsoft.Compute/virtualMachineScaleSets:Percentage CPU",
                        "Microsoft.Cache/redis:Cache Hits"
                    ],
                    "name": "myPlatformTelemetryDataSource"
                }
            ]
        },
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/arg-001/providers/microsoft.operationalinsights/workspaces/loganalyticsworkspace001",
                    "name": "destinationName"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Microsoft.Compute/virtualMachines:Percentage CPU",
                    "Microsoft.Compute/virtualMachines:Disk Read Bytes",
                    "Microsoft.Compute/virtualMachines:Inbound Flows",
                    "Microsoft.Compute/virtualMachineScaleSets:Percentage CPU",
                    "Microsoft.Cache/redis:Cache Hits"
                ],
                "destinations": [
                    "destinationName"
                ]
            }
        ]
    },
    "kind": "PlatformTelemetry",
    "location": "eastus"
}

Przykładowe metryki eksportują obiekty JSON

W poniższych przykładach pokazano przykładowe obiekty JSON dcR na potrzeby eksportowania metryk do każdego typu docelowego.

Obszary robocze usługi Log Analytics

W poniższym przykładzie przedstawiono regułę zbierania danych dla metryk, które wysyłają określone metryki z maszyn wirtualnych, zestawów skalowania maszyn wirtualnych i wszystkie metryki magazynu kluczy do obszaru roboczego usługi Log Analytics:

{
    "properties": {
        "dataSources": {
            "platformTelemetry": [
                {
                    "streams": [
                        "Microsoft.Compute/virtualMachines:Percentage CPU",
                        "Microsoft.Compute/virtualMachines:Disk Read Bytes",
                        "Microsoft.Compute/virtualMachines:Inbound Flows",
                        "Microsoft.Compute/virtualMachineScaleSets:Available Memory Bytes",
                         "Microsoft.KeyVault/vaults:Metrics-Group-All"
                    ],
                    "name": "myPlatformTelemetryDataSource"
                }
            ]
        },
        "destinations": {
            "logAnalytics": [ 
                { 
                    "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-001/providers/microsoft.operationalinsights/workspaces/laworkspace001", 
                    "name": "ladestination" 
                } 
            ] 
        },
        "dataFlows": [
            {
                "streams": [
                        "Microsoft.Compute/virtualMachines:Percentage CPU",
                        "Microsoft.Compute/virtualMachines:Disk Read Bytes",
                        "Microsoft.Compute/virtualMachines:Inbound Flows",
                        "Microsoft.Compute/virtualMachineScaleSets:Available Memory Bytes",
                        "Microsoft.KeyVault/vaults:Metrics-Group-All"
                        ],    
                "destinations": [
                    "ladestination"
                    
                ]
            }
        ]
    },

"kind": "PlatformTelemetry",
    "location": "centralus"
}

Tworzenie kontrolerów domeny dla eksportu metryk

Tworzenie kontrolerów DCR dla eksportu metryk przy użyciu witryny Azure Portal, interfejsu wiersza polecenia, programu PowerShell, interfejsu API REST lub szablonu usługi ARM. Aby uzyskać więcej informacji, zobacz Tworzenie i edytowanie reguł zbierania danych (DCR) i skojarzeń w usłudze Azure Monitor.

Wyeksportowane dane

W poniższych przykładach pokazano dane wyeksportowane do każdego miejsca docelowego.

Obszary robocze usługi Log Analytics

Dane wyeksportowane do obszaru roboczego usługi Log Analytics są przechowywane w AzureMetricsV2 tabeli w obszarze roboczym usługi Log Analytics w następującym formacie:

Kolumna Type Opis
Średnia rzeczywiste Średnia wartość zebrana w przedziale czasu.
_BilledSize rzeczywiste Rozmiar rekordu w bajtach
Count rzeczywiste Liczba próbek zebranych w przedziale czasu.
Wymiar dynamiczna Skojarzony wymiar metryki w formacie JSON.
_IsBillable string Określa, czy pozyskiwanie danych jest rozliczane. Jeśli pozyskiwanie _IsBillable false nie jest rozliczane na koncie platformy Azure
Maksymalnie rzeczywiste Maksymalna wartość zbierana w przedziale czasu.
MetricCategory string Nazwa kategorii metryki.
Nazwa metryki string Nazwa wyświetlana metryki.
MetricResourceType string Typ zasobu platformy Azure raportujący metryki.
Minimum rzeczywiste Minimalna wartość zebrana w zakresie czasu.
_ResourceId string Unikatowy identyfikator zasobu skojarzonego z rekordem
SourceSystem string Typ agenta, przez który zdarzenie zostało zebrane. Na przykład OpsManager w przypadku agenta systemu Windows— bezpośredniego połączenia lub programu Operations Manager — Linux dla wszystkich agentów systemu Linux lub Azure dla Diagnostyka Azure
_SubscriptionId string Unikatowy identyfikator subskrypcji, z którą jest skojarzony rekord
TenantId string Identyfikator obszaru roboczego usługi Log Analytics
TimeGenerated datetime Sygnatura czasowa (UTC) podczas generowania rekordu.
TimeGrain string Ziarno czasu metryki.
Łącznie rzeczywiste Suma wszystkich wartości w zakresie czasu.
Typ string Nazwa tabeli
Nazwa jednostki string Jednostka metryki.

Na przykład:

Zrzut ekranu przedstawiający zapytanie analizy dzienników tabeli AzureMetricsV2.

Konta magazynu

W poniższym przykładzie pokazano dane wyeksportowane na konto magazynu:

{
    "Average": "31.5",
    "Count": "2",
    "Maximum": "52",
    "Minimum": "11",
    "Total": "63",
    "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-dcrs/providers/microsoft.keyvault/vaults/dcr-vault",
    "time": "2024-08-20T14:13:00.0000000Z",
    "unit": "MilliSeconds",
    "metricName": "ServiceApiLatency",
    "timeGrain": "PT1M",
    "dimension": {
        "ActivityName": "vaultget",
        "ActivityType": "vault",
        "StatusCode": "200",
        "StatusCodeClass": "2xx"
    }
}

Event Hubs

W poniższym przykładzie przedstawiono metrykę wyeksportowaną do usługi Event Hubs.

    {
      "Average": "1",
      "Count": "1",
      "Maximum": "1",
      "Minimum": "1",
      "Total": "1",
      "resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-dcrs/providers/microsoft.keyvault/vaults/dcr-vault",
      "time": "2024-08-22T13:43:00.0000000Z",
      "unit": "Count",
      "metricName": "ServiceApiHit",
      "timeGrain": "PT1M",
      "dimension": {
        "ActivityName": "keycreate",
        "ActivityType": "key"
      },
      "EventProcessedUtcTime": "2024-08-22T13:49:17.1233030Z",
      "PartitionId": 0,
      "EventEnqueuedUtcTime": "2024-08-22T13:46:04.5570000Z"
    }

Następne kroki