схема расширения диагностики Windows
Расширение система диагностики Azure — это агент в Azure Monitor, собирающий данные мониторинга из операционной системы на виртуальной машине и рабочих нагрузок ресурсов вычислений Azure. в этой статье подробно описывается схема, используемая для настройки расширения системы диагностики на Windows виртуальных машинах и других ресурсов вычислений.
Схема в этой статье действительна для версий 1,3 и более новых (пакет Azure SDK 2,4 и более поздние версии). Новые разделы конфигурации снабжены комментариями, указывающими, в какой версии они были добавлены. Версия 1,0 и 1,2 схемы были заархивированы и больше не доступны.
Схема файла общедоступной конфигурации
Скачайте общедоступное определение схемы файла конфигурации, выполнив следующую команду PowerShell:
Общие типы атрибутов
Атрибут scheduledTransferPeriod присутствует в нескольких элементах. Это интервал между запланированными передачами в службу хранилища, округленный с точностью до ближайшей минуты. Значение относится к типу данных XML "Duration".
Элемент DiagnosticsConfiguration
Дерево: корневой элемент — DiagnosticsConfiguration
Добавлен в версии 1.3.
Элемент верхнего уровня в файле конфигурации диагностики.
Атрибут xmlns. пространство имен XML для файла конфигурации диагностики: http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration
Дочерние элементы Описание PublicConfig Обязательный элемент. Ознакомьтесь с описанием в другом разделе на этой странице. PrivateConfig Необязательный элемент. Ознакомьтесь с описанием в другом разделе на этой странице. IsEnabled Логическое. Ознакомьтесь с описанием в другом разделе на этой странице.
Элемент PublicConfig
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig
Описывает общедоступную конфигурацию диагностики.
для рабочей роли или веб-роли: C:\Resources\<guid>\directory\<guid>.<RoleName.DiagnosticStore\
для виртуальной машины: C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.IaaSDiagnostics\<WADVersion>\WAD<WADVersion>
Ниже перечислены обязательные атрибуты.
- - : каталог в системе для использования системой диагностики Azure.
Элемент WadCFG
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig, WadCFG
Позволяет определить и настроить сбор данных телеметрии.
Элемент DiagnosticMonitorConfiguration
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig, WadCFG, DiagnosticMonitorConfiguration
Атрибуты Описание overallQuotaInMB Максимальный объем пространства на локальном жестком диске, доступный для диагностических данных различного типа, собранных системой диагностики Azure. Значение по умолчанию составляет 4096 МБ. useProxyServer Позволяет настроить систему диагностики Azure для использования параметров прокси-сервера, указанных в настройках IE. sinks Добавлено в версии 1.5. Необязательный элемент. Указывает расположение приемника для отправки диагностических данных для всех дочерних элементов с соответствующей поддержкой. Пример приемника — Application Insights или Центры событий Azure. Обратите внимание, что необходимо добавить свойство resourceId в элемент метрики , если требуется, чтобы события, отправляемые в концентраторы событий, имели идентификатор ресурса.
- - : задает минимальный уровень серьезности собираемых журналов.
Элемент CrashDumps
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — CrashDumps
Включает сбор аварийных дампов.
Атрибуты Описание containerName Необязательный элемент. Имя контейнера больших двоичных объектов в вашей учетной записи хранения Azure, используемого для хранения аварийных дампов. crashDumpType Необязательный элемент. Позволяет настроить систему диагностики Azure для сбора мини-дампов или полных дампов. directoryQuotaPercentage Необязательный элемент. Позволяет настроить процент от значения overallQuotaInMB, резервируемый для аварийных дампов на виртуальной машине. Дочерние элементы Описание CrashDumpConfiguration Обязательный элемент. Определяет значения конфигурации для каждого процесса.
Следующий атрибут также является обязательным:
Элемент Directories
Дерево: root — DiagnosticsConfiguration-PublicConfig-WadCFG-DiagnosticMonitorConfiguration-Directories
Включает сбор содержимого каталога, журналов невыполненных запросов на вход IIS и (или) журналов IIS.
Необязательный атрибут scheduledTransferPeriod. Ознакомьтесь с описанием выше.
Элемент DataSources
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — Directories — DataSources
Задает список отслеживаемых каталогов.
Элемент DirectoryConfiguration
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — Directories — DataSources — DirectoryConfiguration
Может содержать только один из элементов Absolute и LocalResource, но не оба.
- - : абсолютный путь к отслеживаемому каталогу.
- - : локальный ресурс, который содержит каталог для отслеживания.
Элемент EtwProviders
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — EtwProviders
Настраивает сбор событий ETW (трассировка событий Windows) из поставщиков на основе EventSource и (или) манифеста ETW.
provider: имя класса события EventSource.
- - : минимальный уровень серьезности события для переноса в вашу учетную запись хранения.
provider: GUID поставщика событий.
- - : минимальный уровень серьезности события для переноса в вашу учетную запись хранения.
Элемент EtwEventSourceProviderConfiguration
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — EtwProviders — EtwEventSourceProviderConfiguration
Позволяет настроить сбор событий, создаваемых из класса EventSource.
id: идентификатор события.
Элемент EtwManifestProviderConfiguration
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — EtwProviders — EtwManifestProviderConfiguration
id: идентификатор события.
Элемент Metrics
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — Metrics
Позволяет создать таблицу счетчиков производительности, которая оптимизирована для быстрых запросов. Каждый счетчик производительности, который определен в элементе PerformanceCounters, помимо таблицы счетчиков производительности хранится в таблице метрик.
Атрибут ResourceId является обязательным. Это идентификатор ресурса виртуальной машины или масштабируемого набора виртуальных машин, в котором развертывается система диагностики Azure. Значение resourceID можно получить на портале Azure. Выберите Обзор — группы ресурсов — имя >. Щелкните элемент Свойства и скопируйте значение поля Идентификатор. Это свойство resourceID используется для отправки пользовательских метрик и для добавления свойства resourceID в данные, отправляемые в концентраторы событий. Обратите внимание, что необходимо добавить свойство resourceId в элемент метрики , если требуется, чтобы события, отправляемые в концентраторы событий, имели идентификатор ресурса.
Элемент PerformanceCounters
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — PerformanceCounters
Включает сбор данных счетчиков производительности.
Необязательный атрибут scheduledTransferPeriod. Ознакомьтесь с описанием выше.
- - — имя счетчика производительности. Например, \Processor(_Total)\% Processor Time . Чтобы получить список счетчиков производительности на узле, выполните команду typeperf .
- - : частота выборки для счетчика.
Элемент WindowsEventLog
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — WindowsEventLog
Включает сбор журналов событий Windows.
Необязательный атрибут scheduledTransferPeriod. Ознакомьтесь с описанием выше.
имя — запрос XPath, описывающий собираемые события Windows. Пример:
Application!*[System[(Level <=3)]], System!*[System[(Level <=3)]], System!*[System[Provider[@Name='Microsoft Antimalware']]], Security!*[System[(Level <= 3)]
Элемент Logs
Дерево:корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — Logs
Используется в версиях 1.0 и 1.1. Отсутствует в версии 1.2. Снова добавлен в версии 1.3.
Определяет конфигурацию буфера для базовых журналов Azure.
DockerSources
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — DiagnosticMonitorConfiguration — DockerSources
Добавлен в версии 1.9.
Имя элемента Описание Статистика Указывает системе, что нужно собрать статистику для контейнеров Docker.
Элемент SinksConfig
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — SinksConfig
Содержит список расположений для отправки диагностических данных и конфигурацию, связанную с этими расположениями.
Имя элемента Описание Приемник Ознакомьтесь с описанием в другом разделе на этой странице.
Элемент Sink
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — SinksConfig — Sink
Добавлен в версии 1.5.
Определяет расположение для отправки диагностических данных. Например, это может быть служба Application Insights.
attribute Тип Описание name строка Строка, определяющая имя приемника. Элемент Type Описание Application Insights строка Используется только при отправке данных в Application Insights. Содержит ключ инструментирования для активной учетной записи Application Insights, к которой у вас есть доступ. Каналы строка Указывается для каждой дополнительной фильтрации, используемой при потоковой передаче.
Элемент Channels
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — SinksConfig — Sink — Channels
Добавлен в версии 1.5.
Определяет фильтры для потоков данных журнала, проходящих через приемник.
Элемент Type Описание Канал string Ознакомьтесь с описанием в другом разделе на этой странице.
Элемент Channel
Дерево: корневой элемент — DiagnosticsConfiguration — PublicConfig — WadCFG — SinksConfig — Sink — Channels — Channel
Добавлен в версии 1.5.
Определяет расположение для отправки диагностических данных. Например, это может быть служба Application Insights.
Атрибуты Type Описание logLevel string Указывает минимальный уровень серьезности для передаваемых записей журнала. Значение по умолчанию — Undefined, при котором передаются все журналы. Другие возможные значения (в порядке убывания информативности): Verbose, Information, Warning, Error и Critical. name string Уникальное имя для использования ссылки на канал.
Элемент PrivateConfig
Дерево: корневой элемент — DiagnosticsConfiguration — PrivateConfig
Добавлен в версии 1.3.
Хранит частные сведения об учетной записи хранения (имя, ключ и конечную точку). Эта информация отправляется на виртуальную машину, но извлечь ее из виртуальной машины невозможно.
- - : имя учетной записи хранения.
- - : ключ учетной записи хранения.
- - : конечная точка для доступа к учетной записи хранения.
Элемент IsEnabled
Дерево: корневой элемент — DiagnosticsConfiguration — IsEnabled
Логическое. Используйте true , чтобы включить диагностику, или false , чтобы отключить ее.
Пример конфигурации
ниже приведен полный пример конфигурации для расширения диагностики Windows, показанного как в JSON, так и в XML.
PublicConfig и PrivateConfig разделены, так как в большинстве случаев использования JSON они передаются как разные переменные. К таким случаям относятся шаблоны диспетчер ресурсов, PowerShell и Visual Studio.
Определение приемника Azure Monitor общедоступной конфигурации имеет два свойства: resourceId и регион. Для работы классических Виртуальных машин и классических облачных служб требуются только они. Свойство Region не должно использоваться для других ресурсов, свойство ResourceId используется на виртуальных машинах ARM для заполнения поля resourceId в журналах, передаваемых в концентраторы событий.
Определение приемника Azure Monitor частного файла конфигурации имеет два свойства: PrincipalId и Secret. Для работы классических Виртуальных машин и классических облачных служб требуются только они. Эти свойства не следует использовать для других ресурсов.
Определение общедоступной конфигурации приемника Azure Monitor включает два свойства: resourceId и region. Для работы классических Виртуальных машин и классических облачных служб требуются только они. Эти свойства не следует использовать для Виртуальных машин Resource Manager или масштабируемых наборов виртуальных машин. Также доступен дополнительный элемент закрытой конфигурации приемника Azure Monitor, который передает секрет и идентификатор субъекта. Для работы классических виртуальных машин и классических облачных служб требуются только они. Для работы виртуальных машин Resource Manager и масштабируемого набора виртуальных машин определение Azure Monitor в элементе закрытой конфигурации можно исключить.