Habilitar logs de diagnóstico para recursos da Grade de Eventos

Este artigo fornece instruções passo a passo para habilitar configurações de diagnóstico para recursos da Grade de Eventos. Essas configurações permitem capturar e visualizar informações de diagnóstico para que você possa solucionar problemas de falhas. A tabela a seguir mostra as configurações disponíveis para diferentes tipos de recursos da Grade de Eventos - tópicos personalizados, tópicos do sistema e domínios.

Configuração de diagnóstico Tópicos do Event Grid Tópicos do sistema de Grade de Eventos Domínios de eventos Namespaces de parceiros da Grade de Eventos
EntregaFalhas Sim Sim Sim No
PublishFalhas Sim Não Sim Sim
DataPlaneRequests Sim Não Sim Sim

Importante

Para esquemas de falhas de entrega, falhas de publicação e solicitações de plano de dados, consulte Logs de diagnóstico.

Pré-requisitos

  • Um recurso de Grade de Eventos provisionado
  • Um destino provisionado para capturar logs de diagnóstico:
    • Área de trabalho do Log Analytics
    • Conta de armazenamento
    • Event Hubs
    • Solução de parceiro

Habilitar logs de diagnóstico para tópicos e domínios da Grade de Eventos

Nota

O procedimento a seguir fornece instruções passo a passo para habilitar logs de diagnóstico para tópicos. As etapas para habilitar logs de diagnóstico para um domínio são muito semelhantes. Na etapa 2, navegue até o domínio Grade de Eventos no portal do Azure.

  1. Inicie sessão no portal do Azure.

  2. Navegue até o tópico Grade de Eventos para o qual você deseja habilitar as configurações de log de diagnóstico.

    1. Na barra de pesquisa na parte superior, procure por tópicos da Grade de Eventos.

      Screenshot that shows the Azure portal with Event Grid topics in the search box.

    2. Selecione o tópico na lista para o qual você deseja definir as configurações de diagnóstico.

  3. Selecione Configurações de diagnóstico em Monitoramento no menu à esquerda.

  4. Na página Configurações de diagnóstico, selecione Adicionar nova configuração de diagnóstico.

    Screenshots showing the Diagnostic settings page of a custom topic.

  5. Especifique um nome para a configuração de diagnóstico.

  6. Selecione a opção allLogs na seção Logs .

    Screenshot that shows the Diagnostic setting page with All logs selected.

  7. Habilite um ou mais destinos de captura para os logs e configure-os selecionando um recurso de captura criado anteriormente.

    • Se você selecionar Enviar para o Log Analytics, selecione o espaço de trabalho do Log Analytics.

      Screenshot that shows the Diagnostic settings page with Send to Log Analytics selected.

    • Se selecionar Arquivar para uma conta de armazenamento, selecione Conta de armazenamento - Configurar e, em seguida, selecione a conta de armazenamento na sua subscrição do Azure.

      Screenshot that shows the Diagnostic settings page with Archive to an Azure storage account checked and a storage account selected.

    • Se você selecionar Transmitir para um hub de eventos, selecione Hub de eventos - Configurar e, em seguida, selecione o namespace Hubs de Eventos, o hub de eventos e a política de acesso.

      Screenshot that shows the

  8. Selecione Guardar. Em seguida, selecione X no canto direito para fechar a página.

  9. Agora, de volta à página Configurações de diagnóstico, confirme se você vê uma nova entrada na tabela Configurações de diagnóstico.

    Screenshot that shows the

Você também pode habilitar a coleta de todas as métricas para o tópico.

Habilitar logs de diagnóstico para tópicos do sistema de Grade de Eventos

  1. Inicie sessão no portal do Azure.
  2. Navegue até o tópico do sistema para o qual você deseja habilitar as configurações de log de diagnóstico.
    1. Na barra de pesquisa na parte superior, procure por tópicos do sistema Grade de Eventos. Search for system topics
    2. Selecione o tópico do sistema para o qual você deseja definir as configurações de diagnóstico. Select system topic
  3. Selecione Configurações de diagnóstico em Monitoramento no menu à esquerda e, em seguida, selecione Adicionar configuração de diagnóstico. Add diagnostic settings - button
  4. Especifique um nome para a configuração de diagnóstico.
  5. Selecione a opção allLogs na seção Logs . Select delivery failures
  6. Habilite um ou mais destinos de captura para os logs e configure-os selecionando um recurso de captura criado anteriormente.
    • Se você selecionar Enviar para o Log Analytics, selecione o espaço de trabalho do Log Analytics. Send to Log Analytics
    • Se selecionar Arquivar para uma conta de armazenamento, selecione Conta de armazenamento - Configurar e, em seguida, selecione a conta de armazenamento na sua subscrição do Azure. Archive to an Azure storage account
    • Se você selecionar Transmitir para um Hub de Eventos, selecione Hub de Eventos - Configurar e, em seguida, selecione o namespace Hubs de Eventos, o hub de eventos e a política de acesso. Stream to an event hub
  7. Selecione Guardar. Em seguida, selecione X no canto direito para fechar a página.
  8. Agora, de volta à página Configurações de diagnóstico, confirme se você vê uma nova entrada na tabela Configurações de diagnóstico. Diagnostic setting in the list

Você também pode habilitar a coleta de todas as métricas para o tópico do sistema. System topic - enable all metrics

Exibir logs de diagnóstico no Armazenamento do Azure

  1. Depois de habilitar uma conta de armazenamento como destino de captura, a Grade de Eventos começa a emitir logs de diagnóstico. Você deve ver novos contêineres chamados insights-logs-deliveryfailures e insights-logs-publishfailures na conta de armazenamento.

    Storage - containers for diagnostic logs

  2. Ao navegar por um dos contêineres, você acabará em um blob no formato JSON. O arquivo contém entradas de log para uma falha de entrega ou uma falha de publicação. O caminho de navegação representa o ResourceId do tópico Grade de Eventos e o carimbo de data/hora (nível de minuto) de quando as entradas de log foram emitidas. O arquivo blob/JSON, que pode ser baixado, no final adere ao esquema descrito na próxima seção.

    JSON file in the storage

  3. Você deve ver o conteúdo no arquivo JSON semelhante ao exemplo a seguir:

    {
        "time": "2019-11-01T00:17:13.4389048Z",
        "resourceId": "/SUBSCRIPTIONS/SAMPLE-SUBSCTIPTION-ID /RESOURCEGROUPS/SAMPLE-RESOURCEGROUP-NAME/PROVIDERS/MICROSOFT.EVENTGRID/TOPICS/SAMPLE-TOPIC-NAME ",
        "eventSubscriptionName": "SAMPLEDESTINATION",
        "category": "DeliveryFailures",
        "operationName": "Deliver",
        "message": "Message:outcome=NotFound, latencyInMs=2635, id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx, systemId=xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, state=FilteredFailingDelivery, deliveryTime=11/1/2019 12:17:10 AM, deliveryCount=0, probationCount=0, deliverySchema=EventGridEvent, eventSubscriptionDeliverySchema=EventGridEvent, fields=InputEvent, EventSubscriptionId, DeliveryTime, State, Id, DeliverySchema, LastDeliveryAttemptTime, SystemId, fieldCount=, requestExpiration=1/1/0001 12:00:00 AM, delivered=False publishTime=11/1/2019 12:17:10 AM, eventTime=11/1/2019 12:17:09 AM, eventType=Type, deliveryTime=11/1/2019 12:17:10 AM, filteringState=FilteredWithRpc, inputSchema=EventGridEvent, publisher=DIAGNOSTICLOGSTEST-EASTUS.EASTUS-1.EVENTGRID.AZURE.NET, size=363, fields=Id, PublishTime, SerializedBody, EventType, Topic, Subject, FilteringHashCode, SystemId, Publisher, FilteringTopic, TopicCategory, DataVersion, MetadataVersion, InputSchema, EventTime, fieldCount=15, url=sb://diagnosticlogstesting-eastus.servicebus.windows.net/, deliveryResponse=NotFound: The messaging entity 'sb://diagnosticlogstesting-eastus.servicebus.windows.net/eh-diagnosticlogstest' could not be found. TrackingId:c98c5af6-11f0-400b-8f56-c605662fb849_G14, SystemTracker:diagnosticlogstesting-eastus.servicebus.windows.net:eh-diagnosticlogstest, Timestamp:2019-11-01T00:17:13, referenceId: ac141738a9a54451b12b4cc31a10dedc_G14:"
    }
    

Utilizar o modelo do Azure Resource Manager

Aqui está um exemplo de modelo do Azure Resource Manager para habilitar configurações de diagnóstico para um tópico de Grade de Eventos. Quando você implanta esse modelo de exemplo, os recursos a seguir são criados.

  • Um tópico da Grade de Eventos
  • Um espaço de trabalho do Log Analytics

Em seguida, ele cria uma configuração de diagnóstico no tópico para enviar informações de diagnóstico para o espaço de trabalho do Log Analytics.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "topic_name": {
            "defaultValue": "spegrid0917topic",
            "type": "String"
        },
        "log_analytics_workspace_name": {
            "defaultValue": "splogaw0625",
            "type": "String"
        },
        "location": {
            "defaultValue": "eastus",
            "type": "String"
        },
        "sku": {
            "defaultValue": "Free",
            "type": "String"
        }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.EventGrid/topics",
            "apiVersion": "2020-10-15-preview",
            "name": "[parameters('topic_name')]",
            "location": "[parameters('location')]",
            "sku": {
                "name": "Basic"
            },
            "kind": "Azure",
            "identity": {
                "type": "None"
            },
            "properties": {
                "inputSchema": "EventGridSchema",
                "publicNetworkAccess": "Enabled"
            }
        },
        {
            "apiVersion": "2017-03-15-preview",
            "name": "[parameters('log_analytics_workspace_name')]",
            "location": "[parameters('location')]",
            "type": "Microsoft.OperationalInsights/workspaces",
            "properties": {
                "sku": {
                    "name": "[parameters('sku')]"
                }
            }
        },
        {
            "type": "Microsoft.EventGrid/topics/providers/diagnosticSettings",
            "apiVersion": "2017-05-01-preview",
            "name": "[concat(parameters('topic_name'), '/', 'Microsoft.Insights/', parameters('log_analytics_workspace_name'))]",
            "location": "[parameters('location')]",
            "dependsOn": [
                "[resourceId('Microsoft.EventGrid/topics', parameters('topic_name'))]",
                "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('log_analytics_workspace_name'))]"
            ],
            "properties": {
                "workspaceId": "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('log_analytics_workspace_name'))]",
                "metrics": [
                    {
                        "category": "AllMetrics",
                        "enabled": true
                    }
                ],
                "logs": [
                    {
                        "category": "DeliveryFailures",
                        "enabled": true
                    },
                    {
                        "category": "PublishFailures",
                        "enabled": true
                    }
                ]
            }
        }
    ]
}

Habilitar logs de diagnóstico para rastreamentos de auditoria

A Grade de Eventos pode publicar rastreamentos de auditoria para operações de plano de dados. Para habilitar o recurso, selecione auditoria na seção Grupos de categorias ou selecione DataPlaneRequests na seção Categorias.

O rastreamento de auditoria pode ser usado para garantir que o acesso aos dados seja permitido apenas para fins autorizados. Ele coleta informações sobre o controle de segurança, como nome do recurso, tipo de operação, acesso à rede, nível, região e muito mais. Para obter mais informações sobre como habilitar a configuração de diagnóstico, consulte Logs de diagnóstico em tópicos de grade de eventos e domínios de eventos. Screenshot that shows the Diagnostic settings page with Audit selected.

Importante

Para obter mais informações sobre o DataPlaneRequests esquema, consulte Logs de diagnóstico.

Próximos passos

Para obter o esquema de log e outras informações conceituais sobre logs de diagnóstico para tópicos ou domínios, consulte Logs de diagnóstico.