Indicazioni sulla risoluzione dei problemi per l'agente di Monitoraggio di Azure in macchine virtuali e set di scalabilità Windows

Panoramica dell'agente di Monitoraggio di Azure

Prima di continuare a leggere, è necessario avere familiarità con l'agente di Monitoraggio di Azure e le regole di raccolta dati.

Terminologia

Nome Acronimo Descrizione
Agente di Monitoraggio di Azure AMA Nuovo agente di Monitoraggio di Azure
Regole di raccolta dati DCR Regole per configurare la raccolta di dati da parte dell'agente, ad esempio cosa raccogliere, dove inviare e altro ancora
Servizio di configurazione di Monitoraggio di Azure AMCS Servizio a livello di area ospitato in Azure che controlla la raccolta di dati per questo agente e altre parti di Monitoraggio di Azure. L'agente chiama questo servizio per recuperare i DCR.
Endpoint dei log -- Endpoint per l'invio di dati ad aree di lavoro Log Analytics
Endpoint delle metriche -- Endpoint per l'invio di dati a database delle metriche di Monitoraggio di Azure.
Servizio metadati dell'istanza e ibrido IMDS e HIMDS Servizi ospitati in Azure che forniscono informazioni sulle macchine virtuali attualmente in esecuzione, i set di scalabilità (tramite IMDS) e i server abilitati per Arc (tramite HIMDS) rispettivamente
area di lavoro Log Analytics LAW Destinazione in Monitoraggio di Azure a cui è possibile inviare i log raccolti dall'agente
Metriche personalizzate -- Destinazione in Monitoraggio di Azure a cui è possibile inviare le metriche guest raccolte dall'agente

Procedura di risoluzione dei problemi di base (installazione, agente non in esecuzione, problemi di configurazione)

Seguire questa procedura per risolvere i problemi relativi alla versione più recente dell'agente di Monitoraggio di Azure in esecuzione nella macchina virtuale Windows:

  1. Esaminare attentamente i prerequisiti qui.

  2. Verificare che l'estensione sia stata installata e di cui è stato eseguito il provisioning, che installa i file binari dell'agente nel computer:

    1. Aprire il portale di Azure > selezionare la macchina virtuale > Apri Impostazioni: Estensioni e applicazioni dal riquadro a sinistra > "AzureMonitorWindowsAgent" dovrebbe essere visualizzata con Stato: "Provisioning completato"
    2. In caso contrario, controllare se il computer può raggiungere Azure e trovare l'estensione da installare usando il comando seguente:
      az vm extension image list-versions --location <machine-region> --name AzureMonitorWindowsAgent --publisher Microsoft.Azure.Monitor
      
    3. Attendere 10-15 minuti perché l'estensione potrebbe essere in stato di transizione. Se non viene ancora visualizzato, disinstallare e installare nuovamente l'estensione e ripetere la verifica per visualizzare la visualizzazione dell'estensione.
    4. In caso contrario, verificare se vengono visualizzati errori nei log delle estensioni presenti nel computer C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Monitor.AzureMonitorWindowsAgent
  3. Verificare che l'agente sia in esecuzione:

    1. Controllare se l'agente generi log heartbeat nell'area di lavoro Log Analytics usando la query seguente. Ignorare se "Custom Metrics" è l'unica destinazione nella DCR:
      Heartbeat | where Category == "Azure Monitor Agent" and Computer == "<computer-name>" | take 10
      
    2. In caso contrario, aprire Gestione attività e verificare se il processo "MonAgentCore.exe" sia in esecuzione. In caso affermativo, attendere che venga visualizzato un heartbeat di 5 minuti.
    3. In caso contrario, controllare se vengano visualizzati errori nei log dell'agente principale situati in C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\Configuration nel computer
  4. Verificare che la DCR esista e sia associata alla macchina virtuale:

    1. Se si usa l'area di lavoro Log Analytics come destinazione, verificare che la DCR esista nella stessa area fisica dell'area di lavoro Log Analytics.
    2. Nella macchina virtuale verificare l'esistenza del file C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\mcsconfig.latest.xml. Se il file non esiste:
      • La macchina virtuale potrebbe non essere associata a una DCR. Vedere il Passaggio 3
      • La macchina virtuale potrebbe non avere l'identità gestita abilitata. Vedere qui su come abilitare.
      • Il servizio IMDS non è in esecuzione/accessibile dalla macchina virtuale. Controllare se è possibile accedere a IMDS dal computer.
      • AMA non può accedere a IMDS. Controllare se vengono visualizzati errori IMDS nel file C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\Tables\MAEventTable.tsf.
    3. Aprire il portale di Azure > selezionare la regola di raccolta dati > Aprire Configurazione : Risorse dal riquadro a sinistra > Verrà visualizzata la macchina virtuale elencata qui
    4. Se non è elencata, fare clic su "Aggiungi" e selezionare la macchina virtuale dalla selezione risorse. Ripetere l'operazione in tutti i DCR.
  5. Verificare che l'agente sia stato in grado di scaricare le DCR associate dal servizio AMCS:

    1. Controllare se venga visualizzata la DCR più recente scaricata in questo percorso C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\configchunks

Problemi di raccolta dei contatori delle prestazioni

  1. Verificare che il DCR JSON contenga una sezione per "performanceCounters". In caso contrario, correggere il DCR. Vedere come creare DCR o DCR di campione.
  2. Verificare che il file C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\mcsconfig.lkg.xml esista.
  3. Aprire il file e verificare se contenga nodi CounterSet, come illustrato nell'esempio seguente:
    <CounterSet storeType="Local" duration="PT1M" 
        eventName="c9302257006473204344_16355538690556228697" 
        sampleRateInSeconds="15" format="Factored">
        <Counter>\Processor(_Total)\% Processor Time</Counter>
        <Counter>\Memory\Committed Bytes</Counter>
        <Counter>\LogicalDisk(_Total)\Free Megabytes</Counter>
        <Counter>\PhysicalDisk(_Total)\Avg. Disk Queue Length</Counter>
    </CounterSet>
    

Problemi relativi all'uso di "Metriche personalizzate" come destinazione

  1. Esaminare attentamente i prerequisiti qui.
  2. Assicurarsi che la DCR associata sia stata creata correttamente per raccogliere i contatori delle prestazioni e inviarli alle metriche di Monitoraggio di Azure. Questa sezione dovrebbe essere visualizzata nella DCR:
    "destinations": {  
    "azureMonitorMetrics": {  
        "name":"myAmMetricsDest" 
        } 
    }
    
  3. Eseguire un comando PowerShell:
    Get-WmiObject Win32_Process -Filter "name = 'MetricsExtension.Native.exe'" | select Name,ExecutablePath,CommandLine | Format-List
    
    Verificare che il parametro CommandLine nell'output contenga l'argomento "-TokenSource MSI"
  4. Verificare che il file C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\AuthToken-MSI.json sia presente.
  5. Verificare che il file C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\CUSTOMMETRIC_<subscription>_<region>_MonitoringAccount_Configuration.json sia presente.
  6. Raccogliere log eseguendo il comando C:\Packages\Plugins\Microsoft.Azure.Monitor.AzureMonitorWindowsAgent\<version-number>\Monitoring\Agent\table2csv.exe C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\Tables\MaMetricsExtensionEtw.tsf
    1. Il comando genererà il file 'MaMetricsExtensionEtw.csv'
    2. Aprirlo, cercare eventuali errori di livello 2 e provare a correggerli.

Problemi di raccolta di log eventi di Windows

  1. Verificare che il DCR JSON contenga una sezione per "windowsEventLogs". In caso contrario, correggere il DCR. Vedere come creare DCR o DCR di campione.
  2. Verificare che il file C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\mcsconfig.lkg.xml esista.
  3. Aprire il file e verificare se contenga nodi Subscription, come illustrato nell'esempio seguente:
    <Subscription eventName="c9302257006473204344_14882095577508259570" 
    query="System!*[System[(Level = 1 or Level = 2 or Level = 3)]]">
        <Column name="ProviderGuid" type="mt:wstr" defaultAssignment="00000000-0000-0000-0000-000000000000">
          <Value>/Event/System/Provider/@Guid</Value>
        </Column>
        ...
    
        </Column>
    </Subscription>