Поделиться через


Руководство по устранению неполадок с агентом Azure Monitor на виртуальных машинах Windows и в масштабируемых наборах

Общие сведения об агенте Azure Monitor

Прежде чем продолжать изучение этого руководства, ознакомьтесь со статьями Агент Azure Monitor и Правила сбора данных.

Терминология

Имя. Сокращение Description
Агент Azure Monitor AMA Новый агент Azure Monitor
Правила сбора данных DCR Правила для настройки сбора данных агентом, т. е. правила, касающихся собираемых данных, назначения, в которое они отправляются, и многого другого
Служба настройки Azure Monitor AMCS Региональная служба, размещенная в Azure, которая управляет сбором данных для этого агента и других компонентов Azure Monitor. Агент вызывает эту службу для получения правил DCR.
Конечная точка журналов -- Конечная точка для отправки данных в рабочие области Log Analytics.
Конечная точка метрик -- Конечная точка для отправки данных в базы данных метрик Azure Monitor
Служба метаданных экземпляров и гибридная среда IMDS и HIMDS Службы, размещенные в Azure, которые предоставляют сведения о работающих сейчас виртуальных машинах, масштабируемых наборах (через IMDS) и серверах с поддержкой Arc (через HIMDS) соответственно.
Рабочая область Log Analytics LAW Назначение в Azure Monitor, в которое вы можете отправлять журналы, собранные агентом
Пользовательские метрики -- Назначение в Azure Monitor, в которое вы можете отправлять гостевые метрики, собранные агентом

Основные действия по устранению неполадок (установка, агент не запущен, проблемы с конфигурацией)

Выполните следующие действия, чтобы устранить неполадки с последней версией агента Azure Monitor, работающей на виртуальной машине Windows:

  1. Внимательно изучите предварительные требования, приведенные здесь.

  2. Убедитесь, что расширение успешно установлено и подготовлено, что предусматривает установку двоичных файлов агента на вашем компьютере:

    1. Откройте портал Azure > выберите виртуальную машину > "Открыть параметры: расширения и приложения" в области слева > "AzureMonitorWindowsAgent" должно отображаться с состоянием: "Подготовка выполнена успешно".
    2. Если нет, проверьте, может ли компьютер обратиться к Azure и найти расширение для установки с помощью следующей команды:
      az vm extension image list-versions --location <machine-region> --name AzureMonitorWindowsAgent --publisher Microsoft.Azure.Monitor
      
    3. Подождите 10–15 минут, так как расширение может находиться в состоянии перехода. Если расширение по-прежнему не отображается, удалите и установите расширение еще раз и повторите проверку, чтобы убедиться в том, что расширение отображается.
    4. Если это не помогло, проверьте, отображаются ли сообщения об ошибках в журналах расширений, расположенных в папке C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Monitor.AzureMonitorWindowsAgent на вашем компьютере.
  3. Проверьте, работает ли агент:

    1. Проверьте, генерирует ли агент журналы пульса в рабочую область Log Analytics, используя приведенный ниже запрос. Пропустите, если "Пользовательские метрики" является единственным назначением в DCR:
      Heartbeat | where Category == "Azure Monitor Agent" and Computer == "<computer-name>" | take 10
      
    2. В противном случае откройте диспетчер задач и проверьте, запущен ли процесс MonAgentCore.exe. Если это так, подождите 5 минут, чтобы отобразился пульс.
    3. Если этого не произошло, проверьте, отображаются ли сообщения об ошибках в основных журналах агента, расположенных в папке C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\Configuration на вашем компьютере.
  4. Убедитесь, что правило DCR существует и связано с виртуальной машиной:

    1. При использовании рабочей области Log Analytics в качестве назначения убедитесь, что DCR существует в том же физическом регионе, что и рабочая область Log Analytics.
    2. На виртуальной машине проверьте наличие файла C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\mcsconfig.latest.xml. Если этот файл не существует:
      • Виртуальная машина может быть не связана с DCR. Инструкции см. в пункте 3.
      • На виртуальной машине может быть не включено управляемое удостоверение. Как его включить, см. здесь.
      • Служба IMDS не запущена или доступна из виртуальной машины. Проверьте, можно ли получить доступ к IMDS с компьютера.
      • AMA не может получить доступ к IMDS. Проверьте, отображаются ли ошибки IMDS в файле C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\Tables\MAEventTable.tsf.
    3. Откройте портал Azure > выберите правило "Открыть конфигурацию" правила > сбора данных: ресурсы из области слева > вы увидите виртуальную машину, указанную здесь.
    4. Если она не указана, нажмите кнопку "Добавить" и выберите нужную виртуальную машину в средстве выбора ресурсов. Повторите эти действия для всех правил DCR.
  5. Убедитесь, что агенту удалось скачать связанные правила DCR из службы AMCS:

    1. Проверьте, отображается ли последнее скачанное правило DCR в этом расположении: C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\configchunks.

Проблемы со сбором данных счетчиков производительности

  1. Убедитесь, что в файле JSON правила сбора данных есть раздел performanceCounters. Если он отсутствует, исправьте DCR. Узнайте, как создать DCR или ознакомьтесь с примером DCR.
  2. Убедитесь, что файл C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\mcsconfig.lkg.xml существует.
  3. Откройте файл и проверьте, содержит CounterSet ли он узлы, как показано в следующем примере:
    <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>
    

Проблемы с использованием пользовательских метрик в качестве назначения

  1. Внимательно изучите предварительные требования, приведенные здесь.
  2. Убедитесь, что связанные DCR правильно созданы, чтобы собирать данные счетчиков производительности и передавать их в метрики Azure Monitor. Этот раздел должен отобразиться в DCR:
    "destinations": {  
    "azureMonitorMetrics": {  
        "name":"myAmMetricsDest" 
        } 
    }
    
  3. Выполните команду PowerShell:
    Get-WmiObject Win32_Process -Filter "name = 'MetricsExtension.Native.exe'" | select Name,ExecutablePath,CommandLine | Format-List
    
    Убедитесь, что в выходных данных параметр CommandLine содержит аргумент -TokenSource MSI.
  4. Убедитесь в наличии файла C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\AuthToken-MSI.json.
  5. Убедитесь в наличии файла C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\CUSTOMMETRIC_<subscription>_<region>_MonitoringAccount_Configuration.json.
  6. Соберите журналы, выполнив команду C:\Packages\Plugins\Microsoft.Azure.Monitor.AzureMonitorWindowsAgent\<version-number>\Monitoring\Agent\table2csv.exe C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\Tables\MaMetricsExtensionEtw.tsf.
    1. В результате будет создан файл MaMetricsExtensionEtw.csv.
    2. Откройте его, найдите любые ошибки уровня 2 и попробуйте их устранить.

Проблемы со сбором журналов событий Windows

  1. Убедитесь, что в файле JSON правила сбора данных есть раздел windowsEventLogs. Если он отсутствует, исправьте DCR. Узнайте, как создать DCR или ознакомьтесь с примером DCR.
  2. Убедитесь, что файл C:\WindowsAzure\Resources\AMADataStore.<virtual-machine-name>\mcs\mcsconfig.lkg.xml существует.
  3. Откройте файл и проверьте, содержит Subscription ли он узлы, как показано в следующем примере:
    <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>