Compartilhar via


Monitorar logs de diagnóstico do Azure DocumentDB com o Azure Monitor

Os logs de diagnóstico do Azure são essenciais para capturar logs de recursos do Azure para uma conta do Azure DocumentDB. Esses logs fornecem insights detalhados e frequentes sobre as operações para recursos com a conta.

Importante

Esse recurso não está disponível com a camada de computação M30, camadas inferiores ou SKUs de camada gratuita.

Pré-requisitos

  • Uma assinatura do Azure

    • Se você não tiver uma assinatura do Azure, crie uma conta gratuita
  • Um cluster existente do Azure DocumentDB

  • Um workspace de Log Analytics já existente ou uma conta de armazenamento do Azure.

Criar configurações de diagnóstico

As métricas da plataforma e os logs de atividades são coletados automaticamente. Para coletar logs de recursos e roteá-los externamente do Azure Monitor, você deve estabelecer uma configuração de diagnóstico. Para saber como, consulte Criar configurações de diagnóstico no Azure Monitor.

Gerenciar configurações de diagnóstico

Às vezes, você precisa gerenciar as configurações encontrando ou removendo-as. O az monitor diagnostic-settings grupo de comandos inclui subcomandos para o gerenciamento de configurações de diagnóstico.

  1. Listar todas as configurações de diagnóstico associadas à API para cluster.

    az monitor diagnostic-settings list \
        --resource-group $resourceGroupName \
        --resource $clusterResourceId
    
  2. Exclua uma configuração específica usando o recurso associado e o nome da configuração.

    az monitor diagnostic-settings delete \
        --resource-group $resourceGroupName \
        --name $diagnosticSettingName \
        --resource $clusterResourceId
    

Usar consultas de diagnóstico avançadas

Use essas consultas específicas de recursos para executar pesquisas comuns de solução de problemas em uma API para cluster.

Importante

Esta seção pressupõe que você esteja usando um espaço de trabalho do Log Analytics com logs específicos de recursos.

  1. Navegue até a seção Logs da API para cluster. Observe a lista de consultas de exemplo.

    Captura de tela da lista de consultas de diagnóstico de amostra.

  2. Execute essa consulta para contar o número de API com falha para solicitações agrupadas por código de erro.

    VCoreMongoRequests
    // Time range filter:  | where TimeGenerated between (StartTime .. EndTime)
    // Resource id filter: | where _ResourceId == "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/my-resource-group-name/providers/microsoft.documentdb/mongoclusters/my-cluster-name"
    | where ErrorCode != 0
    | summarize count() by bin(TimeGenerated, 5m), ErrorCode=tostring(ErrorCode)
    
  3. Execute essa consulta para obter a API para a duração do runtime de solicitações P99 por nome da operação.

    // Mongo requests P99 duration by operation 
    // Mongo requests P99 runtime duration by operation name. 
    VCoreMongoRequests
    // Time range filter:  | where TimeGenerated between (StartTime .. EndTime)
    // Resource id filter: | where _ResourceId == "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/my-resource-group-name/providers/microsoft.documentdb/mongoclusters/my-cluster-name"
    | summarize percentile(DurationMs, 99) by bin(TimeGenerated, 1h), OperationName
    
  4. Execute essa consulta para obter a contagem de API para solicitações agrupadas pela duração total do runtime.

    // Mongo requests binned by duration 
    // Count of Mongo requests binned by total runtime duration. 
    VCoreMongoRequests
    // Time range filter:  | where TimeGenerated between (StartTime .. EndTime)
    // Resource id filter: | where _ResourceId == "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/my-resource-group-name/providers/microsoft.documentdb/mongoclusters/my-cluster-name"
    | project TimeGenerated, DurationBin=tostring(bin(DurationMs, 5))
    | summarize count() by bin(TimeGenerated, 1m), tostring(DurationBin)
    
  5. Execute essa consulta para obter a contagem de API para solicitações por agente de usuário.

    // Mongo requests by user agent 
    // Count of Mongo requests by user agent. 
    VCoreMongoRequests
    // Time range filter:  | where TimeGenerated between (StartTime .. EndTime)
    // Resource id filter: | where _ResourceId == "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/my-resource-group-name/providers/microsoft.documentdb/mongoclusters/my-cluster-name"
    | summarize count() by bin(TimeGenerated, 1h), UserAgent