Partilhar via


Exportação de métricas por meio de regras de coleta de dados (Visualização)

As regras de coleta de dados (DCRs) são usadas para coletar dados de monitoramento de seus recursos do Azure. Para obter uma lista do cenário de coleta de dados, consulte Regras de coleta de dados - Visão geral. Agora você pode usar DCRs para coletar e exportar métricas da plataforma.

Atualmente, as métricas da plataforma podem ser coletadas usando DCR e Configurações de diagnóstico. Um número crescente de recursos suporta a exportação de métricas usando DCRs. Consulte Recursos e regiões suportados para obter uma lista de recursos de suporte.

O uso de DCRs para exportar métricas oferece as seguintes vantagens em relação às configurações de diagnóstico:

  • A configuração DCR permite exportar métricas com dimensões.
  • A configuração DCR permite a filtragem com base no nome da métrica - para que você possa exportar apenas as métricas de que precisa.
  • Os DCRs são mais flexíveis e escaláveis em comparação com as Configurações de Diagnóstico.
  • A latência de ponta a ponta para DCRs é de 3 minutos. Esta é uma grande melhoria em relação às Configurações de diagnóstico, onde a latência de exportação de métricas é de 6 a 10 minutos.

Use a exportação de métricas por meio de DCRs para exportação contínua de dados de métricas. Para consultar dados históricos, use a API de lote de métricas do plano de dados. Para obter uma comparação dos dois serviços, consulte Consulta de API de lote de métricas de plano de dados versus exportação de métricas.

Crie DCRs para métricas usando a API REST, a CLI do Azure ou o Azure PowerShell. Para obter informações sobre como criar DCRs para exportação de métricas, consulte Criar regras de coleta de dados para métricas.

Ao criar um DCR, você deve criar uma associação de regra de coleta de dados (DCRA) para associar o DCR ao recurso a ser monitorado. Você pode criar um único DCR para muitos tipos de recursos. Para obter informações sobre como criar um DCRA, consulte Criar associações de regras de coleta de dados. Ao usar o portal do Azure, o DCRA é criado automaticamente.

Nota

É possível usar DCRs e configurações de diagnóstico ao mesmo tempo. Recomendamos que você desabilite as configurações de diagnóstico para métricas ao usar DCRs para evitar a coleta de dados duplicados.

Destinos de exportação

As métricas podem ser exportadas para um dos seguintes destinos por DCR:

  • Espaços de trabalho do Log Analytics.
    A exportação para espaços de trabalho do Log Analytics pode ser feita entre regiões. O espaço de trabalho do Log Analytics e o DCR devem estar na mesma região, mas os recursos que estão sendo monitorados podem estar em qualquer região. As métricas enviadas para um espaço de trabalho de análise de log são armazenadas na AzureMetricsV2 tabela.

  • Contas de armazenamento do Azure.
    A conta de armazenamento, o DCR e os recursos que estão sendo monitorados devem estar todos na mesma região.

  • os Hubs de Eventos.
    Os Hubs de Eventos, o DCR e os recursos que estão sendo monitorados devem estar todos na mesma região.

Para obter uma amostra dos dados em cada destino, consulte Dados exportados.

Nota

A latência para exportar métricas é de aproximadamente 3 minutos. Aguarde até 15 minutos para que as métricas comecem a aparecer no destino após a configuração inicial.

Limitações

DCRs para exportação de métricas têm as seguintes limitações:

  • Apenas um tipo de destino pode ser especificado por DCR.
  • Um máximo de 5 DCRs pode ser associado a um único Recurso do Azure.
  • A exportação de métricas por DCR não suporta a exportação de métricas de grãos por hora.

Recursos e regiões apoiados

Os seguintes recursos oferecem suporte à exportação de métricas usando regras de coleta de dados:

Tipo de recurso Especificação do fluxo
Conjuntos de Dimensionamento de Máquinas Virtuais Microsoft.compute/virtualmachinescalesets
Máquinas virtuais Microsoft.compute/virtualmachines
Cache de Redis Microsoft.cache/redis
Hubs IOT Microsoft.devices/iothubs
Cofres de chaves Microsoft.keyvault/cofres
Contas de armazenamento Microsoft.storage/storageaccounts
Microsoft.storage/Storageaccounts/blobservices
Microsoft.storage/storageaccounts/fileservices
Microsoft.storage/storageaccounts/queueservices
Microsoft.storage/storageaccounts/tableservices
SQL Server Microsoft.sql/servidores
Microsoft.sql/servidores/bases de dados
Informações Operacionais Microsoft.operationalinsights/workspaces
Serviços de multimédia Microsoft.media/mediaservices
Microsoft.media/mediaservices/streamingendpoints
Microsoft.media/mediaservices/liveevents
Proteção de dados Microsoft.proteção de dados/backupvaults
Azure Kubernetes Service Microsoft.ContainerService/managedClusters

Regiões suportadas

Você pode criar um DCR para exportação de métricas em qualquer região, mas os recursos dos quais você deseja exportar métricas devem estar em uma das seguintes regiões:

  • Leste da Austrália
  • E.U.A. Central
  • CentralUsEuap
  • E.U.A. Centro-Sul
  • E.U.A. Leste
  • E.U.A. Leste 2
  • Eastus2Euap
  • E.U.A. Oeste
  • E.U.A. Oeste 2
  • Europa do Norte
  • Europa Ocidental
  • Sul do Reino Unido

Especificações DCR

As regras de coleta de dados são definidas em um objeto JSON. As propriedades a seguir são necessárias para criar um DCR para exportação de métricas.

Property Description
dataSources.platformTelemetry.streams Lista os tipos de recursos e as métricas. Especifique Metrics-Group-All para coletar todas as métricas para o recurso ou especifique métricas individuais. Formato: <resource type>:Metrics-Group-All | <metric name>
Por exemplo, Microsoft.Compute/virtualMachines:Percentage CPU
dataSources.platformTelemetry.name O nome da fonte de dados.
destinations O destino das métricas. Apenas um destino é suportado por DCR.
Tipos de Destinos válidos:
storageAccounts
logAnalytics
eventHubs
dataflows.streams Uma lista de fluxos para passar para o destino no formato: <resource type>:Metrics-Group-All |<metric name>
Por exemplo, Microsoft.Compute/virtualMachines:Percentage CPU"
dataflows.destinations O destino para passar os córregos, conforme definido na destinations propriedade.
identity.type O tipo de identidade a ser usado para o DCR. Necessário para destinos de conta de armazenamento.
Valores válidos:
systemAssigned
userAssigned
kind O tipo de regra de coleta de dados. Defina como PlatformTelemetry para exportação de métricas.
location A localização do DCR.

Nota

Apenas um tipo de destino pode ser especificado por DCR.

Formato JSON para DCR de exportação de métricas

Use o formato no seguinte objeto JSON genérico para criar um DCR para exportação de métricas. Remova os destinos indesejados ao copiar o exemplo.

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

Nota

Ao criar um DCR para exportação de métricas usando a CLI, kind, location, e identity são passados como argumentos e devem ser removidos do objeto JSON.

Identidades atribuídas ao utilizador e ao sistema

As identidades atribuídas ao usuário e ao sistema são suportadas ao criar DCRs. É necessária uma identidade para os destinos da Conta de Armazenamento e dos Hubs de Eventos. Você pode usar uma identidade atribuída ao sistema ou ao usuário. Para obter mais informações, consulte Atribuir funções do Azure a uma identidade gerenciada.

Para usar uma identidade atribuída ao sistema, adicione o identity objeto da seguinte maneira:

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

Para usar uma identidade atribuída ao usuário, adicione o identity objeto da seguinte maneira:

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

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

    }

Métricas de filtragem

Ao especificar as métricas a serem exportadas, você pode filtrar as métricas por nome ou solicitar todas as métricas usando Metrics-Group-All. Para obter uma lista de métricas suportadas, consulte Métricas suportadas e categorias de log por tipo de recurso.

Para especificar mais de uma métrica do mesmo tipo de recurso, crie um item de fluxo separado para cada métrica.

O exemplo a seguir mostra como filtrar métricas por nome.

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

Métricas de exemplo exportam objetos JSON

Os exemplos a seguir mostram exemplos de objetos JSON DCR para exportação de métricas para cada tipo de destino.

Áreas de trabalho do Log Analytics

O exemplo a seguir mostra uma regra de coleta de dados para métricas que envia métricas específicas de máquinas virtuais, conjuntos de dimensionamento de máquinas virtuais e todas as principais métricas do cofre para um espaço de trabalho do 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"
}

Criar DCRs para exportação de métricas

Crie DCRs para exportação de métricas usando o portal do Azure, CLI, PowerShell, API REST ou modelo ARM. Para obter mais informações, consulte Criar uma regra de coleta de dados (DCR) para exportação de métricas.

Dados exportados

Os exemplos a seguir mostram os dados exportados para cada destino.

Espaços de trabalho de análise de log

Os dados exportados para um espaço de trabalho do Log Analytics são armazenados na AzureMetricsV2 tabela no espaço de trabalho do Log Analytics no seguinte formato:

Column Tipo Description
Média real Valor médio recolhido durante o intervalo de tempo.
_BilledSize real O tamanho do registo em bytes
Count real Número de amostras colhidas durante o intervalo de tempo.
Dimensão dynamic Dimensão associada da métrica no formato JSON.
_IsBillable string Especifica se a ingestão dos dados é faturável. Quando _IsBillable é false ingerido, a não é cobrada na sua conta do Azure
Máximo real Valor máximo recolhido durante o intervalo de tempo.
MetricCategory string Nome da categoria da métrica.
MetricName string Nome de exibição da métrica.
MetricResourceType string Tipo de recurso do recurso do Azure que relata a métrica.
Mínimo real Valor mínimo recolhido durante o intervalo de tempo.
_ResourceId string Um identificador exclusivo para o recurso ao qual o registro está associado
SourceSystem string O tipo de agente pelo qual o evento foi coletado. Por exemplo, OpsManager para o agente do Windows, conexão direta ou Operations Manager, Linux para todos os agentes Linux ou Azure para o Diagnóstico do Azure
_SubscriptionId string Um identificador exclusivo para a assinatura à qual o registro está associado
TenantId cadeia O ID do espaço de trabalho do Log Analytics
TimeGenerated datetime Carimbo de data/hora (UTC) quando o registro foi gerado.
Grão de tempo string Grão de tempo da métrica.
Total real Soma de todos os valores no intervalo de tempo.
Type string O nome da tabela
Nome_Unidade string Unidade da métrica.

Por exemplo:

Uma captura de tela de uma consulta de análise de log da tabela AzureMetricsV2.

Contas de armazenamento

O exemplo a seguir mostra os dados exportados para uma conta de armazenamento:

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

Hubs de Eventos

O exemplo a seguir mostra uma métrica exportada para Hubs de Eventos.

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

Próximos passos