Сбор событий и счетчиков производительности с виртуальных машин с помощью агента Azure Monitor

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

Необходимые компоненты

Чтобы выполнить эту процедуру, вам потребуется:

Создание правила сбора данных

Можно определить правило сбора данных для отправки данных с нескольких компьютеров в несколько рабочих областей Log Analytics, включая рабочие области в другом регионе или клиенте. Создайте правило сбора данных в том же регионе , что и рабочая область Log Analytics. Данные событий Windows и системного журнала можно отправлять только в журналы Azure Monitor. Данные счетчиков производительности можно отправлять в метрики и журналы Azure Monitor.

Примечание.

В настоящее время ресурсы Microsoft.HybridCompute (серверы с поддержкой Azure Arc) не могут просматриваться в Обозреватель метрик (портал Azure пользовательском интерфейсе), но их можно получить с помощью REST API метрик (пространства имен метрик — список, определения метрик — список и метрики ).

Примечание.

Чтобы отправлять данные между клиентами, необходимо сначала включить Azure Lighthouse.

  1. В меню "Монитор" выберите "Правила сбора данных".

  2. Выберите "Создать", чтобы создать новое правило сбора данных и связи.

    Снимок экрана: кнопка

  3. Введите имя правила и укажите подписку, группу ресурсов, регион и тип платформы:

    • Параметр Регион указывает, где будет создано правило сбора данных. Виртуальные машины и их связи могут находиться в любой подписке или группе ресурсов в клиенте.
    • Параметр Тип платформы указывает тип ресурсов, к которому применяется правило. Настраиваемый параметр позволяет использовать как типы Windows, так и Для Linux.

    Снимок экрана: вкладка

  4. На вкладке "Ресурсы":

    1. Выберите +Добавить ресурсы и свяжите ресурсы с правилом сбора данных. Ресурсы могут быть виртуальными машинами, Масштабируемые наборы виртуальных машин и Azure Arc для серверов. Портал Azure устанавливает агент Azure Monitor на ресурсы, которые еще не установлены.

      Внимание

      Портал включает управляемое удостоверение, назначаемое системой, на целевом ресурсе, а также существующие удостоверения, назначенные пользователем, если есть. Если в запросе не указано удостоверение, назначаемое пользователем, компьютер по умолчанию использует удостоверение, назначаемое системой.

      Если требуется сетевая изоляция с помощью частных каналов, выберите существующие конечные точки из одного региона для соответствующих ресурсов или создайте новую конечную точку.

    2. Выберите "Включить конечные точки сбора данных".

    3. Выберите конечную точку сбора данных для каждого ресурса, сопоставленного с правилом сбора данных.

    Снимок экрана: вкладка

  5. На вкладке Сбор и доставка нажмите Добавить источник данных, чтобы добавить источник данных и задать назначение.

  6. Выберите тип источника данных.

  7. Выберите данные, которые требуется собрать. Для счетчиков производительности можно выбрать вариант из заранее заданного набора объектов и их частоту выборки. Для событий можно выбрать требуемый набор журналов или уровень серьезности.

    Снимок экрана: форма портал Azure для выбора базовых счетчиков производительности в правиле сбора данных.

  8. Выберите "Пользователь", чтобы собирать журналы и счетчики производительности, которые в настоящее время не поддерживаются источниками данных или фильтровать события с помощью запросов XPath. Затем можно указать запрос XPath для сбора конкретных значений.

    Чтобы собрать счетчик производительности, недоступный по умолчанию, используйте формат \PerfObject(ParentInstance/ObjectInstance#InstanceIndex)\Counter. Если имя счетчика содержит амперсанд (>), замените его на &. Например, \Memory\Free & Zero Page List Bytes.

    Примеры контроллеров домена см. в примерах правил сбора данных (DCR) в Azure Monitor.

    Снимок экрана: форма портал Azure для выбора пользовательских счетчиков производительности в правиле сбора данных.

  9. На вкладке Назначение добавьте одно или несколько назначений для источника данных. Можно выбрать несколько назначений одного или разных типов. Например, можно выбрать несколько рабочих областей Log Analytics, которые также называются многодомными.

    Вы можете отправлять только источники данных Windows и системного журнала только в журналы Azure Monitor. Данные счетчиков производительности можно отправлять в метрики и журналы Azure Monitor. В настоящее время ресурсы гибридных вычислений (Arc for Server) не поддерживают назначение метрик Azure Monitor (предварительная версия).

    Снимок экрана: форма портал Azure для добавления источника данных в правило сбора данных.

  10. Выберите "Добавить источник данных", а затем нажмите кнопку "Просмотр и создание", чтобы просмотреть сведения о правиле сбора данных и сопоставлении с набором виртуальных машин.

  11. Выберите Создать, чтобы создать правило сбора данных.

Файл параметров
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "vmName": {
      "value": "my-azure-vm"
    },
    "associationName": {
      "value": "my-windows-vm-my-dcr"
    },
    "dataCollectionRuleId": {
      "value": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/microsoft.insights/datacollectionrules/my-dcr"
    }
   }
}

Примечание.

После создания правила сбора данных может потребоваться до 5 минут.

Фильтрация событий с помощью запросов XPath

Плата взимается за любые данные, собранные в рабочей области Log Analytics. Таким образом, необходимо собирать только необходимые данные о событии. Базовая конфигурация на портале Azure предоставляет ограниченную возможность фильтрации событий.

Совет

Стратегии снижения затрат Azure Monitor см. в статье "Оптимизация затрат" и Azure Monitor.

Чтобы указать дополнительные фильтры, используйте настраиваемую конфигурацию и укажите XPath, который фильтрует события, которые вам не нужны. Записи XPath записываются в формате LogName!XPathQuery. Например, может потребоваться вернуть только события из журнала событий приложения с идентификатором события 1035. Для XPathQuery этих событий будет *[System[EventID=1035]]. Так как вы хотите получить события из журнала событий приложения, XPath — это Application!*[System[EventID=1035]]

Извлечение запросов XPath из Windows Просмотр событий

В Windows можно использовать Просмотр событий для извлечения запросов XPath, как показано на снимках экрана.

При вставке запроса XPath в поле на экране добавления источника данных, как показано на шаге 5, необходимо добавить категорию типа журнала, за которой следует восклицательный знак (!).

Снимок экрана: шаги по созданию запроса XPath в Windows Просмотр событий.

Совет

Командлет Get-WinEvent PowerShell можно использовать с FilterXPath параметром для проверки допустимости запроса XPath локально на компьютере. Дополнительные сведения см. в совете, приведенном в инструкциях по подключениям Windows на основе агентов. Get-WinEvent Командлет PowerShell поддерживает до 23 выражений. Правила сбора данных Azure Monitor поддерживают до 20. Пример показан в приведенном ниже скрипте.

$XPath = '*[System[EventID=1035]]'
Get-WinEvent -LogName 'Application' -FilterXPath $XPath
  • В предыдущем командлете значение -LogName параметра является начальной частью запроса XPath до восклицательного знака (!). Остальная часть запроса XPath переходит в $XPath параметр.
  • Если скрипт возвращает события, запрос действителен.
  • Если вы получите сообщение "События не найдены, соответствующие указанным критериям выбора", запрос может быть допустимым, но на локальном компьютере отсутствуют соответствующие события.
  • Если получено сообщение "Запрос задан неверно", синтаксис запроса является недопустимым.

Примеры использования пользовательского XPath для фильтрации событий:

Description XPath
Собирать только системные события с идентификатором 4648 System!*[System[EventID=4648]]
Собирать только события журнала безопасности с идентификатором 4648 и именем процесса consent.exe Security!*[System[(EventID=4648)]] and *[EventData[Data[@Name='ProcessName']='C:\Windows\System32\consent.exe']]
Собирать все события категорий «Критическое», «Ошибка», «Предупреждение» и «Информация» из журнала системных событий, за исключением событий с идентификатором 6 (загружен драйвер) System!*[System[(Level=1 or Level=2 or Level=3) and (EventID != 6)]]
Собирать все события безопасности (успешные и неудачные) за исключением событий с идентификатором 4624 (успешный вход) Security!*[System[(band(Keywords,13510798882111488)) and (EventID != 4624)]]

Примечание.

Список ограничений в XPath, поддерживаемых журналом событий Windows, см. в разделе об ограничениях XPath 1.0.
Например, в запросе можно использовать функции "position", "Band" и "timediff", но другие функции, такие как "начинается с" и "содержит", в настоящее время не поддерживаются.

Часто задаваемые вопросы

В этом разделы приводятся ответы на часто задаваемые вопросы.

Как собирать события безопасности Windows с помощью агента Azure Monitor?

Существует два способа для сбора событий безопасности с помощью нового агента при отправке в рабочую область Log Analytics.

  • Агент Azure Monitor можно использовать для собственного сбора событий безопасности, аналогичных другим событиям Windows. Они направляются в таблицу Event в рабочей области Log Analytics.
  • Если вы включили Microsoft Sentinel в рабочей области, события безопасности передаются через агент SecurityEvent Azure Monitor в таблицу (то же самое, что и агент Log Analytics). Для этого сценария всегда требуется включить решение.

Будут ли повторяться события, если я использую агент Azure Monitor и агент Log Analytics на одном компьютере?

Если вы собираете одни и те же события с обоими агентами, происходит дублирование. Это может быть устаревший агент сбора избыточных данных из данных конфигурации рабочей области, собранных правилом сбора данных. Или вы можете собирать события безопасности с помощью устаревшего агента и включить события безопасности Windows с помощью соединителей агента Azure Monitor в Microsoft Sentinel.

Ограничить события дублирования только тем временем, когда вы переходите с одного агента на другой. После полного тестирования правила сбора данных и проверки его сбора данных отключите сбор данных для рабочей области и отключите все соединители данных Microsoft Monitoring Agent.

Предоставляет ли агент Azure Monitor более детализированные параметры фильтрации событий, отличные от запросов Xpath, и указание счетчиков производительности?

Для событий системного журнала в Linux можно выбрать объекты и уровень журнала для каждого объекта.

Если создать правила сбора данных, содержащие один и тот же идентификатор события и связать их с одной виртуальной машиной, будут повторяться события?

Да. Чтобы избежать дублирования, убедитесь, что выбранные события в правилах сбора данных не содержат повторяющихся событий.

Следующие шаги