Condividi tramite


Installare e configurare l'estensione Diagnostica di Azure per Windows (WAD)

L'estensione Diagnostica di Azure è un agente in Monitoraggio di Azure che raccoglie i dati di monitoraggio dal sistema operativo guest e dai carichi di lavoro delle macchine virtuali di Azure e di altre risorse di calcolo. Questo articolo fornisce informazioni su come installare e configurare l'estensione Diagnostica di Azure per Windows e descrive come i dati vengono archiviati in un account Archiviazione di Azure.

L'estensione di diagnostica viene implementata come estensione macchina virtuale in Azure. Supporta le stesse opzioni di installazione usando modelli di Azure Resource Manager, PowerShell e l'interfaccia della riga di comando di Azure. Per informazioni su come installare e gestire le estensioni delle macchine virtuali, vedere Estensioni e funzionalità delle macchine virtuali per Windows.

Panoramica

Quando si configura l'estensione Diagnostica di Azure per Windows, è necessario specificare un account di archiviazione in cui verranno inviati tutti i dati specificati. Facoltativamente, è possibile aggiungere uno o più sink di dati per inviare i dati a posizioni diverse:

  • Sink di Monitoraggio di Azure: inviare dati sulle prestazioni guest alle metriche di Monitoraggio di Azure.
  • Sink dell'hub eventi di Azure: inviare dati di log e prestazioni guest agli hub eventi da inoltrare all'esterno di Azure. Questo sink non può essere configurato nella portale di Azure.

Eseguire l'installazione con il portale di Azure

È possibile installare e configurare l'estensione di diagnostica in una singola macchina virtuale nel portale di Azure. Si userà un'interfaccia anziché lavorare direttamente con la configurazione. Quando si abilita l'estensione Diagnostica, viene usata automaticamente una configurazione predefinita con i contatori delle prestazioni e gli eventi più comuni. È possibile modificare questa configurazione predefinita in base ai requisiti specifici.

Nota

I passaggi seguenti descrivono le impostazioni più comuni per l'estensione di diagnostica. Per altre informazioni su tutte le opzioni di configurazione, vedere Schema dell'estensione diagnostica Windows.

  1. Aprire il menu di una macchina virtuale nel portale di Azure.

  2. Selezionare Impostazioni di diagnostica nella sezione Monitoraggio del menu della macchina virtuale.

  3. Selezionare Abilita il monitoraggio a livello di guest se l'estensione di diagnostica non è già stata abilitata.

    Screenshot that shows enabling monitoring.

  4. Verrà creato un nuovo account Archiviazione di Azure per la macchina virtuale. Il nome sarà basato sul nome del gruppo di risorse per la macchina virtuale. Verrà selezionato un set predefinito di contatori e log delle prestazioni guest.

    Screenshot that shows Diagnostic settings.

  5. Nella scheda Contatori delle prestazioni selezionare le metriche guest da raccogliere da questa macchina virtuale. Usare l'impostazione Personalizzate per una selezione più dettagliata.

    Screenshot that shows Performance counters.

  6. Nella scheda Log selezionare i log da raccogliere dalla macchina virtuale. I log possono essere inviati a risorse di archiviazione o hub eventi, ma non a Monitoraggio di Azure. Usare l'agente Log Analytics per raccogliere i log guest in Monitoraggio di Azure.

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

  7. Nella scheda Dump di arresto anomalo specificare tutti i processi per raccogliere i dump di memoria dopo un arresto anomalo. I dati verranno scritti nell'account di archiviazione per l'impostazione di diagnostica. Facoltativamente, è possibile specificare un contenitore BLOB.

    Screenshot that shows the Crash dumps tab.

  8. Nella scheda Sink specificare se inviare i dati a posizioni diverse da Archiviazione di Azure. Se si seleziona Monitoraggio di Azure, i dati sulle prestazioni guest verranno inviati alle metriche di Monitoraggio di Azure. Non è possibile configurare il sink di hub eventi usando il portale di Azure.

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

    Se non è stata abilitata un'identità assegnata dal sistema configurata per la macchina virtuale, è possibile che venga visualizzato l'avviso seguente quando si salva una configurazione con il sink di Monitoraggio di Azure. Selezionare il banner per abilitare l'identità assegnata dal sistema.

    Screenshot that shows the managed identity warning.

  9. Nella scheda Agente è possibile modificare l'account di archiviazione, impostare la quota del disco e specificare se raccogliere i log dell'infrastruttura di diagnostica.

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

  10. Seleziona Salva per salvare la configurazione.

Nota

La configurazione per l'estensione di diagnostica può essere formattata in JSON o XML, ma qualsiasi configurazione eseguita nella portale di Azure verrà sempre archiviata come JSON. Se si usa XML con un altro metodo di configurazione e quindi si modifica la configurazione con il portale di Azure, le impostazioni verranno convertite in JSON. Inoltre, non è possibile configurare il periodo di conservazione per questi log.

Modello di Resource Manager

Per informazioni su come distribuire l'estensione di diagnostica con i modelli di Azure Resource Manager, vedere Usare il monitoraggio e la diagnostica con una macchina virtuale Windows e i modelli di Azure Resource Manager.

Distribuzione dell'interfaccia della riga di comando di Azure

L'interfaccia della riga di comando di Azure può essere usata per distribuire l'estensione Diagnostica di Azure in una macchina virtuale esistente usando az vm extension set come nell'esempio seguente:

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 

Le impostazioni protette sono definite nell'elemento PrivateConfig dello schema di configurazione. L'esempio minimo seguente di un file di impostazioni protette definisce l'account di archiviazione. Per informazioni dettagliate sulle impostazioni private, vedere Configurazione di esempio.

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

Le impostazioni pubbliche sono definite nell'elemento PublicConfig dello schema di configurazione. L'esempio minimo seguente di un file di impostazioni pubbliche consente la raccolta di log dell'infrastruttura di diagnostica, un singolo contatore delle prestazioni e un singolo registro eventi. Per informazioni dettagliate sulle impostazioni pubbliche, vedere Configurazione di esempio.

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

Distribuzione PowerShell

PowerShell può essere usato per distribuire l'estensione Diagnostica di Azure in una macchina virtuale esistente usando Set-AzVMDiagnosticsExtension, come nell'esempio seguente:

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

Le impostazioni private vengono definite nell'elemento PrivateConfig. Le impostazioni pubbliche sono definite nell'elemento PublicConfig dello schema di configurazione. È anche possibile scegliere di specificare i dettagli dell'account di archiviazione come parametri del Set-AzVMDiagnosticsExtension cmdlet anziché includerli nelle impostazioni private.

L'esempio minimo seguente di un file di configurazione consente la raccolta di log dell'infrastruttura di diagnostica, un singolo contatore delle prestazioni e un singolo registro eventi. Per informazioni dettagliate sulle impostazioni private e pubbliche, vedere Configurazione di esempio.

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

Vedere anche Usare PowerShell per abilitare la Diagnostica di Azure in una macchina virtuale che esegue Windows.

Archiviazione di dati

La tabella seguente elenca i diversi tipi di dati raccolti dall'estensione di diagnostica e indica se vengono archiviati come una tabella o un BLOB. I dati archiviati nelle tabelle possono anche essere archiviati in BLOB a seconda dell'impostazione StorageType nella configurazione pubblica.

Dati Tipo di archiviazione Descrizione
WADDiagnosticInfrastructureLogsTable Tabella Monitor di diagnostica e modifiche alla configurazione.
WADDirectoriesTable Tabella Directory monitorate dal monitor di diagnostica. Questo gruppo include log IIS, log delle richieste iis non riuscite e directory personalizzate. La posizione del file di log dei BLOB è specificata nel campo Container e il nome del BLOB si trova nel campo RelativePath. Il campo AbsolutePath indica la posizione e il nome del file esistente nella macchina virtuale di Azure.
WadLogsTable Tabella Registra i log scritti nel codice usando il listener di traccia.
WADPerformanceCountersTable Tabella Contatori delle prestazioni.
WADWindowsEventLogsTable Tabella Log eventi di Windows.
wad-iis-failedreqlogfiles BLOB Contiene informazioni dei log delle richieste non riuscite di IIS.
wad-iis-logfiles BLOB Contiene le informazioni sui log di IIS.
"custom" BLOB Contenitore personalizzato basato sulle directory di configurazione monitorate dal monitor di diagnostica. Il nome di questo contenitore BLOB verrà specificato in WADDirectoriesTable.

Strumenti per visualizzare i dati di diagnostica

Sono disponibili diversi strumenti per visualizzare i dati dopo il trasferimento nell'archiviazione. Ad esempio:

  • Esplora server in Visual Studio: se sono stati installati gli strumenti di Azure per Microsoft Visual Studio, è possibile usare il nodo Archiviazione di Azure in Esplora server per visualizzare i dati dei BLOB e delle tabelle di sola lettura dagli account Archiviazione di Azure. È possibile visualizzare i dati dall'account dell'emulatore di archiviazione locale e dagli account di archiviazione creati per Azure. Per altre informazioni, vedere Esplorazione e gestione delle risorse di archiviazione con Esplora server.
  • Archiviazione di Microsoft Azure Explorer: questa app autonoma consente di usare facilmente Archiviazione di Azure dati in Windows, OSX e Linux.
  • Azure Management Studio: questo strumento include Diagnostica di Azure Manager. Usarlo per visualizzare, scaricare e gestire i dati di diagnostica raccolti dalle applicazioni in esecuzione in Azure.

Passaggi successivi

Per informazioni sull'inoltro dei dati di monitoraggio a Hub eventi di Azure, vedere Inviare dati dall'estensione Diagnostica di Azure a Hub eventi.