Delen via


De Azure Diagnostics-extensie voor Windows (WAD) installeren en configureren

De Azure Diagnostics-extensie is een agent in Azure Monitor die bewakingsgegevens verzamelt van het gastbesturingssysteem en workloads van virtuele Azure-machines en andere rekenresources. Dit artikel bevat informatie over het installeren en configureren van de Azure Diagnostics-extensie voor Windows en beschrijft hoe de gegevens worden opgeslagen in een Azure Storage-account.

De diagnostische extensie wordt geïmplementeerd als een extensie voor virtuele machines in Azure. Het biedt ondersteuning voor dezelfde installatieopties met behulp van Azure Resource Manager-sjablonen, PowerShell en de Azure CLI. Zie Extensies en functies voor virtuele machines voor Windows voor meer informatie over het installeren en onderhouden van extensies voor virtuele machines.

Overzicht

Wanneer u de Azure Diagnostics-extensie voor Windows configureert, moet u een opslagaccount opgeven waarin alle opgegeven gegevens worden verzonden. U kunt eventueel een of meer gegevenssinks toevoegen om de gegevens naar verschillende locaties te verzenden:

  • Azure Monitor-sink: gastprestatiegegevens verzenden naar metrische gegevens van Azure Monitor.
  • Azure Event Hub-sink: gastprestaties en logboekgegevens verzenden naar Event Hubs om buiten Azure door te sturen. Deze sink kan niet worden geconfigureerd in Azure Portal.

Installeren met Azure Portal

U kunt de diagnostische extensie installeren en configureren op een afzonderlijke virtuele machine in Azure Portal. U werkt met een interface in plaats van rechtstreeks met de configuratie te werken. Wanneer u de diagnostische extensie inschakelt, wordt automatisch een standaardconfiguratie gebruikt met de meest voorkomende prestatiemeteritems en gebeurtenissen. U kunt deze standaardconfiguratie aanpassen aan uw specifieke vereisten.

Notitie

In de volgende stappen worden de meest voorkomende instellingen voor de diagnostische extensie beschreven. Zie het Windows Diagnostics-extensieschema voor meer informatie over alle configuratieopties.

  1. Open het menu voor een virtuele machine in Azure Portal.

  2. Selecteer Diagnostische instellingen in de sectie Bewaking van het VM-menu.

  3. Selecteer Bewaking op gastniveau inschakelen als de diagnostische extensie nog niet is ingeschakeld.

    Schermopname van het inschakelen van bewaking.

  4. Er wordt een nieuw Azure Storage-account gemaakt voor de virtuele machine. De naam is gebaseerd op de naam van de resourcegroep voor de virtuele machine. Er wordt een standaardset met gastprestatiemeteritems en logboeken geselecteerd.

    Schermopname van diagnostische instellingen.

  5. Selecteer op het tabblad Prestatiemeteritems de metrische gastgegevens die u van deze virtuele machine wilt verzamelen. Gebruik de aangepaste instelling voor geavanceerdere selectie.

    Schermopname van prestatiemeteritems.

  6. Selecteer op het tabblad Logboeken de logboeken die u wilt verzamelen van de virtuele machine. Logboeken kunnen worden verzonden naar opslag- of Event Hubs, maar niet naar Azure Monitor. Gebruik de Log Analytics-agent om gastlogboeken te verzamelen naar Azure Monitor.

    Schermopname van het tabblad Logboeken met verschillende logboeken geselecteerd voor een virtuele machine.

  7. Geef op het tabblad Crashdumps alle processen op voor het verzamelen van geheugendumps na een crash. De gegevens worden naar het opslagaccount geschreven voor de diagnostische instelling. U kunt desgewenst een blobcontainer opgeven.

    Schermopname van het tabblad Crashdumps.

  8. Geef op het tabblad Sinks op of de gegevens naar andere locaties dan Azure Storage moeten worden verzonden . Als u Azure Monitor selecteert, worden gastprestatiegegevens verzonden naar metrische gegevens van Azure Monitor. U kunt de Sink voor Event Hubs niet configureren met behulp van Azure Portal.

    Schermopname van het tabblad Sinks met de optie Diagnostische gegevens verzenden naar Azure Monitor ingeschakeld.

    Als u geen door het systeem toegewezen identiteit hebt ingeschakeld die is geconfigureerd voor uw virtuele machine, ziet u mogelijk de volgende waarschuwing wanneer u een configuratie met de Azure Monitor-sink opslaat. Selecteer de banner om de door het systeem toegewezen identiteit in te schakelen.

    Schermopname van de waarschuwing voor beheerde identiteit.

  9. Op het tabblad Agent kunt u het opslagaccount wijzigen, het schijfquotum instellen en opgeven of diagnostische infrastructuurlogboeken moeten worden verzameld.

    Schermopname van het tabblad Agent met de optie om het opslagaccount in te stellen.

  10. Selecteer Opslaan om de configuratie op te slaan.

Notitie

De configuratie voor de diagnostische extensie kan worden opgemaakt in JSON of XML, maar elke configuratie die in Azure Portal wordt uitgevoerd, wordt altijd opgeslagen als JSON. Als u XML gebruikt met een andere configuratiemethode en vervolgens uw configuratie wijzigt met Azure Portal, worden de instellingen gewijzigd in JSON. Er is ook geen optie om de bewaarperiode voor deze logboeken in te stellen.

Resource Manager-sjabloon

Zie Bewaking en diagnostische gegevens gebruiken met een Windows-VM en Azure Resource Manager-sjablonen voor meer informatie over het implementeren van de diagnostische extensie met Azure Resource Manager-sjablonen.

Implementatie van Azure CLI

De Azure CLI kan worden gebruikt om de Azure Diagnostics-extensie te implementeren op een bestaande virtuele machine met behulp van az vm extension set , zoals in het volgende voorbeeld:

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 beveiligde instellingen worden gedefinieerd in het PrivateConfig-element van het configuratieschema. In het volgende minimale voorbeeld van een beveiligd instellingenbestand wordt het opslagaccount gedefinieerd. Zie Voorbeeldconfiguratie voor volledige details van de privé-instellingen.

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

De openbare instellingen worden gedefinieerd in het openbare element van het configuratieschema. In het volgende minimale voorbeeld van een bestand met openbare instellingen kunt u logboeken voor diagnostische infrastructuur, één prestatiemeteritem en één gebeurtenislogboek verzamelen. Zie Voorbeeldconfiguratie voor volledige details van de openbare instellingen.

{
  "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-implementatie

PowerShell kan worden gebruikt om de Azure Diagnostics-extensie te implementeren op een bestaande virtuele machine met behulp van Set-AzVMDiagnosticsExtension, zoals in het volgende voorbeeld:

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

De privé-instellingen worden gedefinieerd in het element PrivateConfig. De openbare instellingen worden gedefinieerd in het openbare element van het configuratieschema. U kunt er ook voor kiezen om de details van het opslagaccount op te geven als parameters van de Set-AzVMDiagnosticsExtension cmdlet in plaats van ze op te slaan in de privé-instellingen.

In het volgende minimale voorbeeld van een configuratiebestand kunt u logboeken voor diagnostische infrastructuur, één prestatiemeteritem en één gebeurtenislogboek verzamelen. Zie Voorbeeldconfiguratie voor meer informatie over de persoonlijke en openbare instellingen.

{
    "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"
    }
}

Zie ook PowerShell gebruiken om Azure Diagnostics in te schakelen op een virtuele machine met Windows.

Gegevensopslag

De volgende tabel bevat de verschillende typen gegevens die zijn verzameld uit de diagnostische extensie en of ze zijn opgeslagen als een tabel of blob. De gegevens die zijn opgeslagen in tabellen, kunnen ook worden opgeslagen in blobs, afhankelijk van de instelling StorageType in uw openbare configuratie.

Gegevens Opslagtype Beschrijving
WADDiagnosticInfrastructureLogsTable Tabel Wijzigingen in diagnostische bewaking en configuratie.
WADDirectoriesTable Tabel Mappen die door de diagnostische monitor worden bewaakt. Deze groep bevat IIS-logboeken, logboeken met mislukte IIS-aanvragen en aangepaste mappen. De locatie van het bloblogboekbestand wordt opgegeven in het containerveld en de naam van de blob bevindt zich in het veld RelativePath. Het veld AbsolutePath geeft de locatie en naam van het bestand aan zoals het op de virtuele Azure-machine bestond.
WadLogsTable Tabel Logboeken die in code zijn geschreven met behulp van de traceerlistener.
WADPerformanceCountersTable Tabel Prestatiemeteritems.
WADWindowsEventLogsTable Tabel Windows-gebeurtenislogboeken.
wad-iis-failedreqlogfiles Blob Bevat informatie uit iis mislukte aanvraaglogboeken.
wad-iis-logfiles Blob Bevat informatie over IIS-logboeken.
"aangepast" Blob Een aangepaste container op basis van het configureren van mappen die worden bewaakt door de diagnostische monitor. De naam van deze blobcontainer wordt opgegeven in WADDirectoriesTable.

Hulpprogramma's voor het weergeven van diagnostische gegevens

Er zijn verschillende hulpprogramma's beschikbaar om de gegevens weer te geven nadat deze naar de opslag zijn overgebracht. Voorbeeld:

  • Server Explorer in Visual Studio: als u de Azure Tools voor Microsoft Visual Studio hebt geïnstalleerd, kunt u het Azure Storage-knooppunt in Server Explorer gebruiken om alleen-lezen blob- en tabelgegevens uit uw Azure Storage-accounts weer te geven. U kunt gegevens weergeven uit uw lokale opslagemulatoraccount en van opslagaccounts die u voor Azure hebt gemaakt. Zie Bladeren en beheren van opslagresources met Server Explorer voor meer informatie.
  • Microsoft Azure Storage Explorer: met deze zelfstandige app kunt u eenvoudig werken met Azure Storage-gegevens in Windows, OSX en Linux.
  • Azure Management Studio: dit hulpprogramma omvat Azure Diagnostics Manager. Gebruik deze om de diagnostische gegevens weer te geven, te downloaden en te beheren die worden verzameld door de toepassingen die worden uitgevoerd in Azure.

Volgende stappen

Zie Gegevens verzenden van de Azure Diagnostics-extensie naar Event Hubs voor meer informatie over het doorsturen van bewakingsgegevens naar Azure Event Hubs.