Enviar dados para Hubs de Eventos e Armazenamento (pré-visualização)
Este artigo descreve como usar o Azure Monitor Agent (AMA) para carregar dados no Armazenamento do Azure e Hubs de Eventos. Esse recurso está em visualização.
O Agente do Azure Monitor é o novo agente de telemetria consolidado para coletar dados de recursos IaaS, como máquinas virtuais. Usando o recurso de carregamento nesta visualização, você pode carregar os logs1 enviados para os espaços de trabalho do Log Analytics para Hubs de Eventos e Armazenamento. Ambos os destinos de dados usam regras de coleta de dados para configurar a configuração de coleta para os agentes.
Observação
A extensão do Diagnóstico do Microsoft Azure será descontinuada em 31 de março de 2026. Após essa data, a Microsoft não fornecerá mais suporte para a extensão do Azure Diagnostics.
Notas de rodapé
1: Nem todos os tipos de dados são suportados; consulte O que é suportado para obter informações específicas.
Migração das Extensões de Diagnóstico do Azure para Linux e Windows (LAD/WAD)
- O Agente do Azure Monitor pode coletar e enviar dados para vários destinos, incluindo espaços de trabalho do Log Analytics, Hubs de Eventos do Azure e Armazenamento do Microsoft Azure.
- Para verificar quais extensões estão instaladas na sua VM, selecione Extensões + aplicativos em Configurações na sua VM.
- Remova o LAD ou o WAD depois de configurar o Azure Monitor Agent para coletar os mesmos dados nos Hubs de Eventos ou no Armazenamento do Microsoft Azure para evitar dados duplicados.
- Como alternativa ao armazenamento, recomendamos fortemente que você configure uma tabela com o Plano auxiliar no seu espaço de trabalho do Log Analytics para um registro econômico.
O que tem suporte
Tipos de dados
Windows:
- Logs de eventos do Windows – para eventhub e armazenamento
- Contadores de Perf – eventhub e armazenamento
- Logs do IIS – para blob de armazenamento
- Logs personalizados – para blob de armazenamento
Linux:
- Syslog – para eventhub e armazenamento
- Contadores de Perf – para eventhub e armazenamento
- Logs personalizados / arquivos de log, para armazenamento
Sistemas operacionais
- Ambientes suportados pelo Agente de Monitoramento do Azure no Windows e Linux
- Esse recurso só tem suporte e está planejado para ser suportado para VMs do Azure. Não há planos para trazer isso para cenários locais ou do Azure Arc.
O que não tem suporte
Tipos de dados
- Windows:
- Logs ETW (chegando em um lançamento posterior)
- Despejos de Memória do Windows (não planejados nem serão suportados)
- Logs de aplicativos (não planejados nem com suporte)
- Logs de origem de eventos do .NET (não planejados nem com suporte)
Pré-requisitos
Uma identidade gerenciada (sistema ou usuário) associada aos recursos abaixo. É altamente recomendável usar identidade gerenciada atribuída pelo usuário para melhorar a escalabilidade e o desempenho.
Criar uma regra de coleta de dados
Crie uma regra de coleta de dados para coletar eventos e enviar para o armazenamento e o hub de eventos.
Na caixa de pesquisa do portal do Azure, digite modelo e selecione Implantar um modelo personalizado.
Selecione Criar seu próprio modelo no editor.
Cole este modelo do Azure Resource Manager no editor:
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "location": { "type": "string", "defaultValue": "[resourceGroup().location]", "metadata": { "description": "Location for all resources." } }, "dataCollectionRulesName": { "defaultValue": "[concat(resourceGroup().name, 'DCR')]", "type": "String" }, "storageAccountName": { "defaultValue": "[concat(resourceGroup().name, 'sa')]", "type": "String" }, "eventHubNamespaceName": { "defaultValue": "[concat(resourceGroup().name, 'eh')]", "type": "String" }, "eventHubInstanceName": { "defaultValue": "[concat(resourceGroup().name, 'ehins')]", "type": "String" } }, "resources": [ { "type": "Microsoft.Insights/dataCollectionRules", "apiVersion": "2022-06-01", "name": "[parameters('dataCollectionRulesName')]", "location": "[parameters('location')]", "kind": "AgentDirectToStore", "properties": { "dataSources": { "performanceCounters": [ { "streams": [ "Microsoft-Perf" ], "samplingFrequencyInSeconds": 10, "counterSpecifiers": [ "\\Process(_Total)\\Working Set - Private", "\\Memory\\% Committed Bytes In Use", "\\LogicalDisk(_Total)\\% Free Space", "\\Network Interface(*)\\Bytes Total/sec" ], "name": "perfCounterDataSource10" } ], "windowsEventLogs": [ { "streams": [ "Microsoft-Event" ], "xPathQueries": [ "Application!*[System[(Level=2)]]", "System!*[System[(Level=2)]]" ], "name": "eventLogsDataSource" } ], "iisLogs": [ { "streams": [ "Microsoft-W3CIISLog" ], "logDirectories": [ "C:\\inetpub\\logs\\LogFiles\\W3SVC1\\" ], "name": "myIisLogsDataSource" } ], "logFiles": [ { "streams": [ "Custom-Text-logs" ], "filePatterns": [ "C:\\JavaLogs\\*.log" ], "format": "text", "settings": { "text": { "recordStartTimestampFormat": "ISO 8601" } }, "name": "myTextLogs" } ] }, "destinations": { "eventHubsDirect": [ { "eventHubResourceId": "[resourceId('Microsoft.EventHub/namespaces/eventhubs', parameters('eventHubNamespaceName'), parameters('eventHubInstanceName'))]", "name": "myEh1" } ], "storageBlobsDirect": [ { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedPerf", "containerName": "PerfBlob" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedWin", "containerName": "WinEventBlob" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedIIS", "containerName": "IISBlob" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedTextLogs", "containerName": "TxtLogBlob" } ], "storageTablesDirect": [ { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "tableNamedPerf", "tableName": "PerfTable" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "tableNamedWin", "tableName": "WinTable" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "tableUnnamed" } ] }, "dataFlows": [ { "streams": [ "Microsoft-Perf" ], "destinations": [ "myEh1", "blobNamedPerf", "tableNamedPerf", "tableUnnamed" ] }, { "streams": [ "Microsoft-Event" ], "destinations": [ "myEh1", "blobNamedWin", "tableNamedWin", "tableUnnamed" ] }, { "streams": [ "Microsoft-W3CIISLog" ], "destinations": [ "blobNamedIIS" ] }, { "streams": [ "Custom-Text-logs" ], "destinations": [ "blobNamedTextLogs" ] } ] } } ] }
Atualize os seguintes valores no modelo do Azure Resource Manager. Consulte o modelo de exemplo do Azure Resource Manager.
Hub de eventos
Valor Descrição dataSources
Defina-o de acordo com suas necessidades. Os tipos suportados para carregamento direto nos Hubs de Eventos para Windows são performanceCounters
ewindowsEventLogs
e, para Linux, sãoperformanceCounters
esyslog
.destinations
Use eventHubsDirect
para upload direto para o hub de eventos.eventHubResourceId
ID do recurso da instância do hub de eventos.
Observação : não é a ID de recurso de namespace do hub de eventos.dataFlows
Em dataFlows
, inclua o nome do destino.Tabela de armazenamento
Valor Descrição dataSources
Defina-a de acordo com suas necessidades. Os tipos suportados para upload direto para armazenamento de Tabela para Windows são performanceCounters
,windowsEventLogs
e para Linux, eles sãoperformanceCounters
esyslog
.destinations
Use storageTablesDirect
para upload direto para o armazenamento de tabelas.storageAccountResourceId
ID do recurso da conta de armazenamento. tableName
O nome da Tabela para a qual o blob JSON com dados de evento é carregado. dataFlows
Em dataFlows
, inclua o nome do destino.Blob de armazenamento
Valor Descrição dataSources
Defina-a de acordo com suas necessidades. Os tipos suportados para upload direto para blob de armazenamento para Windows são performanceCounters
,windowsEventLogs
,iisLogs
,logFiles
e, para Linux, sãoperformanceCounters
,syslog
elogFiles
.destinations
Use storageBlobsDirect
para upload direto para o armazenamento de blob.storageAccountResourceId
A ID do recurso da conta de armazenamento. containerName
O nome do contêiner para o qual o blob JSON com dados de evento é carregado. dataFlows
Em dataFlows
, inclua o nome do destino.Selecione Salvar.
Criar uma associação DCR e implantar o agente do Azure Monitor
Use a implantação de modelo personalizado para criar a associação DCR e a implantação AMA.
Na caixa de pesquisa do portal do Azure, digite modelo e selecione Implantar um modelo personalizado.
Selecione Criar seu próprio modelo no editor.
Cole esse modelo do Azure Resource Manager no editor.
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "vmName": { "defaultValue": "[concat(resourceGroup().name, 'vm')]", "type": "String" }, "location": { "type": "string", "defaultValue": "[resourceGroup().location]", "metadata": { "description": "Location for all resources." } }, "dataCollectionRulesName": { "defaultValue": "[concat(resourceGroup().name, 'DCR')]", "type": "String", "metadata": { "description": "Data Collection Rule Name" } }, "dcraName": { "type": "string", "defaultValue": "[concat(uniquestring(resourceGroup().id), 'DCRLink')]", "metadata": { "description": "Name of the association." } }, "identityName": { "type": "string", "defaultValue": "[concat(resourceGroup().name, 'UAI')]", "metadata": { "description": "Managed Identity" } } }, "resources": [ { "type": "Microsoft.Compute/virtualMachines/providers/dataCollectionRuleAssociations", "name": "[concat(parameters('vmName'),'/microsoft.insights/', parameters('dcraName'))]", "apiVersion": "2021-04-01", "properties": { "description": "Association of data collection rule. Deleting this association will break the data collection for this virtual machine.", "dataCollectionRuleId": "[resourceID('Microsoft.Insights/dataCollectionRules',parameters('dataCollectionRulesName'))]" } }, { "type": "Microsoft.Compute/virtualMachines/extensions", "name": "[concat(parameters('vmName'), '/AMAExtension')]", "apiVersion": "2020-06-01", "location": "[parameters('location')]", "dependsOn": [ "[resourceId('Microsoft.Compute/virtualMachines/providers/dataCollectionRuleAssociations', parameters('vmName'), 'Microsoft.Insights', parameters('dcraName'))]" ], "properties": { "publisher": "Microsoft.Azure.Monitor", "type": "AzureMonitorWindowsAgent", "typeHandlerVersion": "1.0", "autoUpgradeMinorVersion": true, "settings": { "authentication": { "managedIdentity": { "identifier-name": "mi_res_id", "identifier-value": "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',parameters('identityName'))]" } } } } } ] }
Selecione Salvar.
Solução de problemas
Use a seção a seguir para solucionar problemas de envio de dados para Hubs de Eventos e Armazenamento.
Dados não encontrados no armazenamento de blob da conta de armazenamento
- Verifique se a função interna
Storage Blob Data Contributor
está atribuída com identidade gerenciada na conta de armazenamento. - Verifique se a identidade gerenciada está atribuída à VM.
- Verifique se as configurações do AMA têm o parâmetro de identidade gerenciado.
Dados não encontrados no armazenamento da tabela de contas de armazenamento
- Verifique se a função interna
Storage Table Data Contributor
está atribuída com identidade gerenciada na conta de armazenamento. - Verifique se a identidade gerenciada está atribuída à VM.
- Verifique se as configurações do AMA têm o parâmetro de identidade gerenciado.
Os dados não fluem para o hub de eventos
- Verifique se a função integrada
Azure Event Hubs Data Sender
foi atribuída com uma identidade gerenciada na instância de hub de eventos. - Verifique se a identidade gerenciada está atribuída à VM.
- Verifique se as configurações do AMA têm o parâmetro de identidade gerenciado.
Convergência AMA e WAD/LAD
O Agente de Monitoramento do Azure dará suporte ao carregamento de dados no Application Insights?
Não, esse suporte não faz parte do roteiro. O Application Insights agora é alimentado pelo Log Analytics Workspaces.
O Agente de Monitoramento do Azure dará suporte a Despejos de Memória do Windows como um tipo de dados a ser carregado?
Não, esse suporte não faz parte do roteiro. O Agente de Monitoramento do Azure destina-se a logs de telemetria e não a tipos de arquivos grandes.
Isso significa que as extensões de diagnóstico do Linux (LAD) e do Windows (WAD) não são mais suportadas/desativadas?
LAD e WAD serão desativados em 31 de março de 2026. Além dos patches de segurança necessários e correções de bug/regressão, não há aprimoramentos nem desenvolvimento de recursos planejados para WAD/LAD. É altamente recomendável que você mova para o agente do Azure Monitor assim que possível.
Como configurar o AMA para hubs de eventos e destinos de dados de armazenamento
Hoje, a experiência de configuração é usando a API DCR.
Você ainda estará desenvolvendo ativamente no WAD e no LAD?
WAD e LAD só receberão segurança/patches daqui para frente. A maior parte do financiamento de engenharia foi para o Agente de Monitoramento do Azure. É altamente recomendável migrar para o Agente de Monitoramento do Azure para se beneficiar de todos os seus recursos incríveis.
Confira também
- Para obter mais informações sobre como criar uma regra de coleta de dados, consulte Coleta de dados de máquinas virtuais usando o Agente do Azure Monitor.