Monitorar logs de diagnóstico do Azure Cosmos DB for MongoDB vCore com o Azure Monitor
APLICA-SE AO: MongoDB vCore
Os logs de diagnóstico do Azure são essenciais para capturar logs de recursos do Azure para uma conta do Azure Cosmos DB for MongoDB vCore. 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 SKUs M25
(com capacidade de intermitência) ou M30
(camada livre).
Pré-requisitos
- Um cluster vCore do Azure Cosmos DB for MongoDB existente.
- Caso não tenha uma assinatura do Azure, crie uma conta gratuitamente.
- Se você tiver uma assinatura existente do Azure, crie um cluster VCore do Azure Cosmos DB for MongoDB.
- Um workspace do Log Analytics ou conta de armazenamento do Azure.
Criar configurações de diagnóstico
As métricas da plataforma e os logs de atividade são coletados automaticamente. Para coletar logs de recursos e roteá-los externamente do Azure Monitor, você deverá estabelecer uma configuração de diagnóstico. Ao ativar as configurações de diagnóstico para contas do Azure Cosmos DB, você deverá optar por roteá-las para um workspace do Log Analytics ou uma conta de armazenamento do Azure.
Crie variáveis shell para
clusterName
eresourceGroupName
.# Variable for API for MongoDB vCore cluster resource clusterName="<resource-name>" # Variable for resource group resourceGroupName="<resource-group-name>"
Crie variáveis de shell para
workspaceName
ediagnosticSettingName
.# Variable for workspace name workspaceName="<storage-account-name>" # Variable for diagnostic setting name diagnosticSettingName="<diagnostic-setting-name>"
Observação
Por exemplo, se o nome do workspace do Log Analytics for
test-workspace
e o nome das configurações de diagnóstico fortest-setting
:workspaceName="test-workspace" diagnosticSettingName:"test-setting"
Obtenha o identificador de recurso para o cluster da API para MongoDB vCore.
az cosmosdb mongocluster show \ --resource-group $resourceGroupName \ --cluster-name $clusterName clusterResourceId=$(az cosmosdb mongocluster show \ --resource-group $resourceGroupName \ --cluster-name $clusterName \ --query "id" \ --output "tsv" \ )
Obtenha o identificador de recursos para o workspace do Log Analytics.
az monitor log-analytics workspace show \ --resource-group $resourceGroupName \ --name $workspaceName workspaceResourceId=$(az monitor log-analytics workspace show \ --resource-group $resourceGroupName \ --name $workspaceName \ --query "id" \ --output "tsv" \ )
Use
az monitor diagnostic-settings create
para criar a configuração.az monitor diagnostic-settings create \ --resource-group $resourceGroupName \ --name $diagnosticSettingName \ --resource $clusterResourceId \ --export-to-resource-specific true \ --logs '[{category:vCoreMongoRequests,enabled:true,retention-policy:{enabled:false,days:0}}]' \ --workspace $workspaceResourceId
Importante
Ao habilitar a configuração de
--export-to-resource-specific true
, você garantirá que os eventos de log de solicitação do MongoDB vCore sejam ingeridos com eficiência na tabelavCoreMongoRequests
especificamente projetada com um esquema dedicado.Por outro lado, deixar de configurar
--export-to-resource-specific true
resultaria em eventos de log de solicitação da API para MongoDB vCore sendo roteados para a tabelaAzureDiagnostics
geral.É importante observar que, ao criar a configuração de diagnóstico por meio do Portal, atualmente, os eventos de log fluirão para a tabela
AzureDiagnostics
. Para os clientes que preferem exportar os logs para a tabelaVCoreMongoRequests
específica do recurso, recomendamos utilizar a CLI do Azure com a opção--export-to-resource-specific true
.
Gerenciar configurações de diagnóstico
Algumas vezes você precisa gerenciar as configurações encontrando ou removendo-as. O grupo de comandos az monitor diagnostic-settings
inclui subcomandos para o gerenciamento de configurações de diagnóstico.
Liste todas as configurações de diagnóstico associadas ao cluster da API para MongoDB vCore.
az monitor diagnostic-settings list \ --resource-group $resourceGroupName \ --resource $clusterResourceId
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
Use as consultas de diagnóstico avançado
Use estas consultas específicas de recursos para executar pesquisas comuns de solução de problemas em um cluster da API para MongoDB vCore.
Importante
Esta seção pressupõe que você esteja usando um workspace do Log Analytics com logs específicos de recursos.
Navegue até a seção Logs do cluster da API para MongoDB vCore. Observe a lista de consultas de exemplo.
Execute esta consulta para contar o número de solicitações de API para MongoDB vCore com falha agrupadas por código de erro.
VCoreMongoRequests // Time range filter: | where TimeGenerated between (StartTime .. EndTime) // Resource id filter: | where _ResourceId == "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group-name/providers/microsoft.documentdb/mongoclusters/my-cluster-name" | where ErrorCode != 0 | summarize count() by bin(TimeGenerated, 5m), ErrorCode=tostring(ErrorCode)
Execute esta consulta para duração do runtime para obter as solicitações de API para MongoDB vCore
P99
pelo nome da operação.// Mongo vCore requests P99 duration by operation // Mongo vCore requests P99 runtime duration by operation name. VCoreMongoRequests // Time range filter: | where TimeGenerated between (StartTime .. EndTime) // Resource id filter: | where _ResourceId == "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group-name/providers/microsoft.documentdb/mongoclusters/my-cluster-name" | summarize percentile(DurationMs, 99) by bin(TimeGenerated, 1h), OperationName
Execute esta consulta para obter a contagem de solicitações da API para MongoDB vCore agrupadas pela duração total do runtime.
// Mongo vCore requests binned by duration // Count of Mongo vCore requests binned by total runtime duration. VCoreMongoRequests // Time range filter: | where TimeGenerated between (StartTime .. EndTime) // Resource id filter: | where _ResourceId == "/subscriptions/00000000-0000-0000-0000-000000000000/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)
Execute esta consulta para obter a contagem de solicitações da API para MongoDB vCore por agente de usuário.
// Mongo vCore requests by user agent // Count of Mongo vCore requests by user agent. VCoreMongoRequests // Time range filter: | where TimeGenerated between (StartTime .. EndTime) // Resource id filter: | where _ResourceId == "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group-name/providers/microsoft.documentdb/mongoclusters/my-cluster-name" | summarize count() by bin(TimeGenerated, 1h), UserAgent
Conteúdo relacionado
- Leia mais sobre a compatibilidade de recursos com o MongoDB.
- Examinar as opções de migração do MongoDB para o Azure Cosmos DB for MongoDB vCore
- Comece criando uma conta.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de