GÄLLER FÖR: 
              
               NoSQL 
              
               MongoDB 
              
               Kassandra 
              
               Gremlin 
              
               Bord
Du kan samla in resursloggar i Azure med hjälp av diagnostikinställningar. Resurser genererar Azure-resursloggar och tillhandahåller omfattande, frekventa data om resursens drift. Dessa loggar samlas in per begäran och kallas även för dataplansloggar. Några exempel på dataplansåtgärder är borttagning, infogning och readFeed. Innehållet i loggarna varierar beroende på resurstyp.
Mer information om diagnostikinställningar finns i Diagnostikinställningar i Azure Monitor.
Kommentar
Vi rekommenderar att du skapar diagnostikinställningen i resursspecifikt läge (för alla API:er utom API för tabell) genom att följa anvisningarna på fliken REST API . Det här alternativet ger ytterligare kostnadsoptimeringar med en förbättrad vy för hantering av data.
 
Förutsättningar
- Ett befintligt Azure Cosmos DB-konto.
 
- En befintlig Azure Monitor Log Analytics-arbetsyta.
 
Varning
Om du behöver ta bort, byta namn på eller flytta en resurs eller migrera den mellan resursgrupper eller prenumerationer tar du först bort dess diagnostikinställningar. Annars kan diagnostikinställningarna för den borttagna resursen inkluderas i den nya resursen om du återskapar den här resursen, beroende på resurskonfigurationen för varje resurs. Om diagnostikinställningarna ingår i den nya resursen återupptar detta samlingen av resursloggar enligt definitionen i diagnostikinställningen och skickar tillämpliga mått- och loggdata till det tidigare konfigurerade målet.
Det är också en bra idé att ta bort diagnostikinställningarna för en resurs som du ska ta bort och inte planerar att använda igen för att hålla miljön ren.
 
Skapa diagnostikinställningar
Här går vi igenom processen med att skapa diagnostikinställningar för ditt konto.
Kommentar
Export av metriken till loggar som en kategori stöds inte för närvarande.
 
Logga in på Azure-portalen.
 
Gå till ditt befintliga Azure Cosmos DB-konto.
 
I avsnittet Övervakning på resursmenyn väljer du Diagnostikinställningar. Välj sedan alternativet Lägg till diagnostikinställning .
              
              
              
              
              
              
            
Viktigt!
Du kan se en uppmaning om att "aktivera fulltextfråga [...] för mer detaljerad loggning" om frågefunktionen i fulltext inte är aktiverad i ditt konto. Du kan ignorera den här varningen om du inte vill aktivera den här funktionen. Mer information finns i aktivera fulltextfråga.
 
 
I fönstret Diagnostikinställningar namnger du inställningen example-setting och väljer sedan kategorin QueryRuntimeStatistics . Aktivera kryssrutan Skicka till Log Analytics-arbetsyta och välj din befintliga arbetsyta. Välj slutligen Resursspecifik som målalternativ.
              
              
              
              
            
 
              az monitor diagnostic-settings create Använd kommandot för att skapa en diagnostikinställning med Azure CLI. Mer information om kommandots parametrar finns i dokumentationen.
Se till att du har loggat in på Azure CLI. Mer information finns i Logga in med Azure CLI.
 
Använd az monitor diagnostic-settings create för att skapa inställningen.
az monitor diagnostic-settings create \
  --resource $(az cosmosdb show \
    --resource-group "<resource-group-name>" \
    --name "<account-name>" \
    --query "id" \
    --output "tsv" \
  ) \
  --workspace $(az monitor log-analytics workspace show \
    --resource-group "<resource-group-name>" \
    --name "<account-name>" \
    --query "id" \
    --output "tsv" \
  ) \
  --name "example-setting" \
  --export-to-resource-specific true \
  --logs '[
    {
      "category": "QueryRuntimeStatistics",
      "enabled": true
    }
  ]'
Viktigt!
Det här exemplet använder --export-to-resource-specific argumentet för att aktivera resursspecifika tabeller.
 
 
Granska resultatet av att skapa den nya inställningen med hjälp av az monitor diagnostics-settings show.
az monitor diagnostic-settings show \
  --name "example-setting" \
  --resource $(az cosmosdb show \
    --resource-group "<resource-group-name>" \
    --name "<account-name>" \
    --query "id" \
    --output "tsv" \
  )
 
Använd REST-API :et för Azure Monitor för att skapa en diagnostikinställning via den interaktiva konsolen.
Se till att du har loggat in på Azure CLI. Mer information finns i Logga in med Azure CLI.
 
Skapa diagnostikinställningen för din Azure Cosmos DB-resurs med hjälp av en HTTP-begäran PUT och az rest.
diagnosticSettingName="example-setting"
resourceId=$(az cosmosdb show \
  --resource-group "<resource-group-name>" \
  --name "<account-name>" \
  --query "id" \
  --output "tsv" \
)
workspaceId=$(az monitor log-analytics workspace show \
  --resource-group "<resource-group-name>" \
  --name "<account-name>" \
  --query "id" \
  --output "tsv" \
)
az rest \
  --method "PUT" \
  --url "$resourceId/providers/Microsoft.Insights/diagnosticSettings/$diagnosticSettingName" \
  --url-parameters "api-version=2021-05-01-preview" \
  --body '{
    "properties": {
      "workspaceId": "'"$workspaceId"'",
      "logs": [
        {
          "category": "QueryRuntimeStatistics",
          "enabled": true
        }
      ],
      "logAnalyticsDestinationType": "Dedicated"
    }
  }'
Viktigt!
Det här exemplet anger egenskapen logAnalyticsDestinationType till Dedicated för att aktivera resursspecifika tabeller.
 
 
Använd az rest igen med ett HTTP-verb GET för att hämta egenskaperna för diagnostikinställningen.
diagnosticSettingName="example-setting"
resourceId=$(az cosmosdb show \
  --resource-group "<resource-group-name>" \
  --name "<account-name>" \
  --query "id" \
  --output "tsv" \
)
az rest \
  --method "GET" \
  --url "$resourceId/providers/Microsoft.Insights/diagnosticSettings/$diagnosticSettingName" \
  --url-parameters "api-version=2021-05-01-preview"
 
Använd en Bicep-mall för att skapa diagnostikinställningen.
Se till att du har loggat in på Azure CLI. Mer information finns i Logga in med Azure CLI.
 
Skapa en ny fil med namnet diagnosticSetting.bicep.
 
Ange följande Bicep-mallinnehåll som distribuerar diagnostikinställningen för din Azure Cosmos DB-resurs.
@description('The name of the diagnostic setting to create.')
param diagnosticSettingName string = 'example-setting'
@description('The name of the Azure Cosmos DB account to monitor.')
param azureCosmosDbAccountName string
@description('The name of the Azure Monitor Log Analytics workspace to use.')
param logAnalyticsWorkspaceName string
resource azureCosmosDbAccount 'Microsoft.DocumentDB/databaseAccounts@2021-06-15' existing = {
  name: azureCosmosDbAccountName
}
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2023-09-01' existing = {
  name: logAnalyticsWorkspaceName
}
resource diagnosticSetting 'Microsoft.Insights/diagnosticSettings@2021-05-01-preview' = {
  name: diagnosticSettingName
  scope: azureCosmosDbAccount
  properties: {
    workspaceId: logAnalyticsWorkspace.id
    logAnalyticsDestinationType: 'Dedicated'
    logs: [
      {
        category: 'QueryRuntimeStatistics'
        enabled: true
      }
    ]
  }
}    
Viktigt!
Det här exemplet anger egenskapen logAnalyticsDestinationType till Dedicated för att aktivera resursspecifika tabeller.
 
 
Distribuera mallen med .az deployment group create
az deployment group create \
    --resource-group "<resource-group-name>" \
    --template-file diagnosticSetting.bicep \
    --parameters \
      azureCosmosDbAccountName="<azure-cosmos-db-account-name>" \
      logAnalyticsWorkspaceName="<log-analytics-workspace-name>"
Dricks
              az bicep build Använd kommandot för att konvertera Bicep-mallen till en Azure Resource Manager-mall.
 
 
Använd en Azure Resource Manager-mall för att skapa diagnostikinställningen.
Se till att du har loggat in på Azure CLI. Mer information finns i Logga in med Azure CLI.
 
Skapa en ny fil med namnet diagnosticSetting.bicep.
 
Ange följande Azure Resource Manager-mallinnehåll som distribuerar diagnostikinställningen för din Azure Cosmos DB-resurs.
{
  "$schema": "<https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#>",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "diagnosticSettingName": {
      "type": "string",
      "defaultValue": "example-setting",
      "metadata": {
        "description": "The name of the diagnostic setting to create."
      }
    },
    "azureCosmosDbAccountName": {
      "type": "string",
      "metadata": {
        "description": "The name of the Azure Cosmos DB account to monitor."
      }
    },
    "logAnalyticsWorkspaceName": {
      "type": "string",
      "metadata": {
        "description": "The name of the Azure Monitor Log Analytics workspace to use."
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.Insights/diagnosticSettings",
      "apiVersion": "2021-05-01-preview",
      "scope": "[format('Microsoft.DocumentDB/databaseAccounts/{0}', parameters('azureCosmosDbAccountName'))]",
      "name": "[parameters('diagnosticSettingName')]",
      "properties": {
        "workspaceId": "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('logAnalyticsWorkspaceName'))]",
        "logAnalyticsDestinationType": "Dedicated",
        "logs": [
          {
            "category": "QueryRuntimeStatistics",
            "enabled": true
          }
        ]
      }
    }
  ]
}
Viktigt!
Det här exemplet anger egenskapen logAnalyticsDestinationType till Dedicated för att aktivera resursspecifika tabeller.
 
 
Distribuera mallen med .az deployment group create
az deployment group create \
    --resource-group "<resource-group-name>" \
    --template-file azuredeploy.json \
    --parameters \
      azureCosmosDbAccountName="<azure-cosmos-db-account-name>" \
      logAnalyticsWorkspaceName="<log-analytics-workspace-name>"
Dricks
              az bicep decompile Använd kommandot för att konvertera Azure Resource Manager-mallen till en Bicep-mall.
 
 
 
Aktivera fulltextfråga för att logga frågetext
Azure Cosmos DB tillhandahåller avancerad loggning för detaljerad felsökning. Genom att aktivera fulltextfråga kan du visa den inaktuella frågan för alla begäranden i ditt Azure Cosmos DB-konto. Du ger också behörighet för Azure Cosmos DB att komma åt och visa dessa data i dina loggar.
Varning
Om du aktiverar den här funktionen kan det leda till ytterligare loggningskostnader. Prisinformation finns i Prissättning för Azure Monitor. Vi rekommenderar att du inaktiverar den här funktionen efter felsökningen.
 
På den befintliga Azure Cosmos DB-kontosidan väljer du alternativet Funktioner i avsnittet Inställningar på resursmenyn. Välj sedan frågefunktionen Diagnostik i fulltext .
              
              
              
              
              
              
            
 
I dialogrutan väljer du Enable. Den här inställningen tillämpas inom några minuter. Alla nyligen inmatade loggar har nu fulltext- eller PIICommand-text för varje begäran.
              
              
              
              
            
 
Använd Azure CLI för att aktivera fulltextfråga för ditt Azure Cosmos DB-konto.
Aktivera fulltextfråga med hjälp av az rest igen med ett HTTP-verb PATCH och en JSON-nyttolast.
az rest \
  --method "PATCH" \
  --url $(az cosmosdb show \
    --resource-group "<resource-group-name>" \
    --name "<account-name>" \
    --query "id" \
    --output "tsv" \
  ) \
  --url-parameters "api-version=2021-05-01-preview" \
  --body '{
    "properties": {
      "diagnosticLogSettings": {
        "enableFullTextQuery": "True"
      }
    }
  }'
 
Vänta några minuter tills åtgärden har slutförts. Kontrollera statusen för fulltextfrågan genom att använda az rest igen med HTTP GET.
az rest \
  --method "GET" \
  --url $(az cosmosdb show \
    --resource-group "<resource-group-name>" \
    --name "<account-name>" \
    --query "id" \
    --output "tsv" \
  ) \
  --url-parameters "api-version=2021-05-01-preview" \
  --query "{accountName:name,fullTextQueryEnabled:properties.diagnosticLogSettings.enableFullTextQuery}"
Utdata bör likna det här exemplet.
{
  "accountName": "<account-name>",
  "fullTextQueryEnabled": "True"
}
 
 
Relaterat innehåll