Installera och konfigurera Azure Diagnostics-tillägget för Windows (WAD)

Azure Diagnostics-tillägget är en agent i Azure Monitor som samlar in övervakningsdata från gästoperativsystemet och arbetsbelastningar för virtuella Azure-datorer och andra beräkningsresurser. Den här artikeln innehåller information om hur du installerar och konfigurerar Azure Diagnostics-tillägget för Windows och beskriver hur data lagras i ett Azure Storage-konto.

Diagnostiktillägget implementeras som ett tillägg för virtuella datorer i Azure. Den stöder samma installationsalternativ med hjälp av Azure Resource Manager-mallar, PowerShell och Azure CLI. Information om hur du installerar och underhåller tillägg för virtuella datorer finns i Tillägg och funktioner för virtuella datorer för Windows.

Översikt

När du konfigurerar Azure Diagnostics-tillägget för Windows måste du ange ett lagringskonto där alla angivna data skickas. Du kan också lägga till en eller flera datamottagare för att skicka data till olika platser:

  • Azure Monitor-mottagare: Skicka gästprestandadata till Azure Monitor Metrics.
  • Azure Event Hub-mottagare: Skicka gästprestanda och loggdata till händelsehubbar för vidarebefordran utanför Azure. Det går inte att konfigurera den här mottagaren i Azure-portalen.

Installera med Azure-portalen

Du kan installera och konfigurera diagnostiktillägget på en enskild virtuell dator i Azure-portalen. Du arbetar med ett gränssnitt i stället för att arbeta direkt med konfigurationen. När du aktiverar diagnostiktillägget använder det automatiskt en standardkonfiguration med de vanligaste prestandaräknarna och händelserna. Du kan ändra den här standardkonfigurationen enligt dina specifika krav.

Kommentar

Följande steg beskriver de vanligaste inställningarna för diagnostiktillägget. Mer information om alla konfigurationsalternativ finns i Schema för Windows-diagnostiktillägg.

  1. Öppna menyn för en virtuell dator i Azure-portalen.

  2. Välj Diagnostikinställningar i avsnittet Övervakning på vm-menyn.

  3. Välj Aktivera övervakning på gästnivå om diagnostiktillägget inte redan har aktiverats.

    Screenshot that shows enabling monitoring.

  4. Ett nytt Azure Storage-konto skapas för den virtuella datorn. Namnet baseras på namnet på resursgruppen för den virtuella datorn. En standarduppsättning gästprestandaräknare och loggar väljs.

    Screenshot that shows Diagnostic settings.

  5. På fliken Prestandaräknare väljer du de gästmått som du vill samla in från den här virtuella datorn. Använd inställningen Anpassad för mer avancerade val.

    Screenshot that shows Performance counters.

  6. På fliken Loggar väljer du de loggar som ska samlas in från den virtuella datorn. Loggar kan skickas till lagrings- eller händelsehubbar, men inte till Azure Monitor. Använd Log Analytics-agenten för att samla in gästloggar till Azure Monitor.

    Screenshot that shows the Logs tab with different logs selected for a virtual machine.

  7. På fliken Kraschdumpar anger du alla processer för att samla in minnesdumpar efter en krasch. Data skrivs till lagringskontot för diagnostikinställningen. Du kan också ange en blobcontainer.

    Screenshot that shows the Crash dumps tab.

  8. På fliken Mottagare anger du om data ska skickas till andra platser än Azure Storage. Om du väljer Azure Monitor skickas gästprestandadata till Azure Monitor Metrics. Du kan inte konfigurera händelsehubbarnas mottagare med hjälp av Azure-portalen.

    Screenshot that shows the Sinks tab with the Send diagnostic data to Azure Monitor option enabled.

    Om du inte har aktiverat en systemtilldelad identitet som konfigurerats för den virtuella datorn kan följande varning visas när du sparar en konfiguration med Azure Monitor-mottagaren. Välj banderollen för att aktivera den systemtilldelade identiteten.

    Screenshot that shows the managed identity warning.

  9. På fliken Agent kan du ändra lagringskontot, ange diskkvoten och ange om diagnostikinfrastrukturloggar ska samlas in.

    Screenshot that shows the Agent tab with the option to set the storage account.

  10. Välj Spara för att spara konfiguration.

Kommentar

Konfigurationen för diagnostiktillägget kan formateras i JSON eller XML, men alla konfigurationer som görs i Azure-portalen lagras alltid som JSON. Om du använder XML med en annan konfigurationsmetod och sedan ändrar konfigurationen med Azure-portalen ändras inställningarna till JSON. Det finns heller inget alternativ för att konfigurera kvarhållningsperioden för dessa loggar.

Resource Manager-mall

Information om hur du distribuerar diagnostiktillägget med Azure Resource Manager-mallar finns i Använda övervakning och diagnostik med en virtuell Windows-dator och Azure Resource Manager-mallar.

Azure CLI-distribution

Azure CLI kan användas för att distribuera Azure Diagnostics-tillägget till en befintlig virtuell dator med hjälp av az vm extension set som i följande exempel:

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name IaaSDiagnostics \
  --publisher Microsoft.Azure.Diagnostics \
  --protected-settings protected-settings.json \
  --settings public-settings.json 

De skyddade inställningarna definieras i elementet PrivateConfig i konfigurationsschemat. Följande minimala exempel på en skyddad inställningsfil definierar lagringskontot. Fullständig information om de privata inställningarna finns i Exempelkonfiguration.

{
    "storageAccountName": "mystorageaccount",
    "storageAccountKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "storageAccountEndPoint": "https://core.windows.net"
}

De offentliga inställningarna definieras i det offentliga elementet i konfigurationsschemat. Följande minimala exempel på en offentlig inställningsfil möjliggör insamling av loggar för diagnostikinfrastruktur, en enskild prestandaräknare och en enskild händelselogg. Fullständig information om de offentliga inställningarna finns i Exempelkonfiguration.

{
  "StorageAccount": "mystorageaccount",
  "WadCfg": {
    "DiagnosticMonitorConfiguration": {
      "overallQuotaInMB": 5120,
      "PerformanceCounters": {
        "scheduledTransferPeriod": "PT1M",
        "PerformanceCounterConfiguration": [
          {
            "counterSpecifier": "\\Processor Information(_Total)\\% Processor Time",
            "unit": "Percent",
            "sampleRate": "PT60S"
          }
        ]
      },
      "WindowsEventLog": {
        "scheduledTransferPeriod": "PT1M",
        "DataSource": [
          {
            "name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
          }
        ]
      }
    }
  }
}

PowerShell-distribution

PowerShell kan användas för att distribuera Azure Diagnostics-tillägget till en befintlig virtuell dator med hjälp av Set-AzVMDiagnosticsExtension, som i följande exempel:

Set-AzVMDiagnosticsExtension -ResourceGroupName "myvmresourcegroup" `
  -VMName "myvm" `
  -DiagnosticsConfigurationPath "DiagnosticsConfiguration.json"

De privata inställningarna definieras i elementet PrivateConfig. De offentliga inställningarna definieras i det offentliga elementet i konfigurationsschemat. Du kan också välja att ange information om lagringskontot som parametrar för cmdleten Set-AzVMDiagnosticsExtension i stället för att inkludera dem i de privata inställningarna.

Följande minimala exempel på en konfigurationsfil möjliggör insamling av loggar för diagnostikinfrastruktur, en enda prestandaräknare och en enda händelselogg. Fullständig information om de privata och offentliga inställningarna finns i Exempelkonfiguration.

{
    "PublicConfig": {
        "WadCfg": {
            "DiagnosticMonitorConfiguration": {
                "overallQuotaInMB": 10000,
                "DiagnosticInfrastructureLogs": {
                    "scheduledTransferLogLevelFilter": "Error"
                },
                "PerformanceCounters": {
                    "scheduledTransferPeriod": "PT1M",
                    "PerformanceCounterConfiguration": [
                        {
                            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
                            "sampleRate": "PT3M",
                            "unit": "percent"
                        }
                    ]
                },
                "WindowsEventLog": {
                    "scheduledTransferPeriod": "PT1M",
                        "DataSource": [
                        {
                            "name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
                        }
                    ]
                }
            }
        },
        "StorageAccount": "mystorageaccount",
        "StorageType": "TableAndBlob"
    },
    "PrivateConfig": {
        "storageAccountName": "mystorageaccount",
        "storageAccountKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        "storageAccountEndPoint": "https://core.windows.net"
    }
}

Se även Använda PowerShell för att aktivera Azure Diagnostics på en virtuell dator som kör Windows.

Datalagring

I följande tabell visas de olika typerna av data som samlas in från diagnostiktillägget och om de lagras som en tabell eller en blob. Data som lagras i tabeller kan också lagras i blobar beroende på inställningen StorageType i den offentliga konfigurationen.

Data Lagringstyp Description
WADDiagnosticInfrastructureLogsTable Register Diagnostikövervakning och konfigurationsändringar.
WADDirectoriesTable Register Kataloger som diagnostikövervakaren övervakar. Den här gruppen innehåller IIS-loggar, IIS-misslyckade begärandeloggar och anpassade kataloger. Platsen för blobloggfilen anges i fältet Container och namnet på bloben finns i fältet RelativePath. Fältet AbsolutePath anger platsen och namnet på filen eftersom den fanns på den virtuella Azure-datorn.
WadLogsTable Register Loggar som skrivits i kod med hjälp av spårningslyssnaren.
WADPerformanceCountersTable Register Prestandaräknare.
WADWindowsEventLogsTable Register Windows-händelseloggar.
wad-iis-failedreqlogfiles Blob Innehåller information från loggar för misslyckade IIS-begäranden.
wad-iis-logfiles Blob Innehåller information om IIS-loggar.
"anpassad" Blob En anpassad container som baseras på konfigurering av kataloger som övervakas av diagnostikövervakaren. Namnet på den här blobcontainern anges i WADDirectoriesTable.

Verktyg för att visa diagnostikdata

Det finns flera tillgängliga verktyg för att visa data när de har överförts till lagringen. Till exempel:

  • Server Explorer i Visual Studio: Om du har installerat Azure Tools för Microsoft Visual Studio kan du använda Azure Storage-noden i Server Explorer för att visa skrivskyddade blob- och tabelldata från dina Azure Storage-konton. Du kan visa data från ditt lokala lagringsemulatorkonto och från lagringskonton som du har skapat för Azure. Mer information finns i Bläddra och hantera lagringsresurser med Server Explorer.
  • Microsoft Azure Storage Explorer: Med den här fristående appen kan du enkelt arbeta med Azure Storage-data i Windows, OSX och Linux.
  • Azure Management Studio: Det här verktyget innehåller Azure Diagnostics Manager. Använd den för att visa, ladda ned och hantera diagnostikdata som samlas in av de program som körs i Azure.

Nästa steg

Information om vidarebefordran av övervakningsdata till Azure Event Hubs finns i Skicka data från Azure Diagnostics-tillägget till Event Hubs.