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


Установка и настройка расширения Диагностика Azure для Windows (WAD)

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

Расширение диагностики реализовано в Azure как расширение виртуальной машины. Он поддерживает те же параметры установки с помощью шаблонов Azure Resource Manager, PowerShell и Azure CLI. Сведения об установке и обслуживании расширений виртуальных машин см. в разделе "Расширения и компоненты виртуальных машин" для Windows.

Обзор

При настройке расширения Диагностика Azure для Windows необходимо указать учетную запись хранения, в которой будут отправляться все указанные данные. При необходимости можно добавить один или несколько приемников данных для отправки данных в разные расположения:

  • Получатель данных Azure Monitor: отправка данных о производительности гостей в Azure Monitor Metrics.
  • Приемник Концентратора событий Azure: отправка данных о производительности гостя и журналы в центры событий для пересылки за пределы Azure. Этот синк нельзя настроить в портале Azure.

Установка с помощью портала Azure

Расширение диагностики можно установить и настроить на отдельной виртуальной машине на портале Azure. Вы будете работать с интерфейсом, а не работать непосредственно с конфигурацией. При включении расширения диагностики оно будет автоматически использовать конфигурацию по умолчанию с наиболее распространенными счетчиками производительности и событиями. Эту конфигурацию по умолчанию можно изменить в соответствии с конкретными требованиями.

Примечание.

Следующие шаги описывают наиболее распространенные настройки расширения диагностики. Дополнительные сведения обо всех параметрах конфигурации см. в схеме расширения диагностики Windows.

  1. Откройте меню виртуальной машины на портале Azure.

  2. Выберите параметры диагностики в разделе "Мониторинг " меню виртуальной машины.

  3. Выберите Включить мониторинг на уровне гостей, если расширение диагностики еще не включено.

    Снимок экрана: включение мониторинга.

  4. Для ВМ будет создана новая учетная запись хранилища Azure. Имя будет зависеть от имени группы ресурсов для виртуальной машины. Будет выбран набор счетчиков производительности гостей и журналов по умолчанию.

    Снимок экрана: параметры диагностики.

  5. На вкладке счетчиков производительности выберите гостевые метрики, которые нужно собрать с этой виртуальной машины. Для более расширенного выбора используйте параметр Другие.

    Снимок экрана: счетчики производительности.

  6. На вкладке "Журналы" выберите журналы для сбора с виртуальной машины. Журналы можно отправлять в хранилище или в концентраторы событий, но не в Azure Monitor. Используйте агент Log Analytics, чтобы собирать гостевые журналы в Azure Monitor.

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

  7. На вкладке "Аварийные дампы" укажите все процессы для сбора дампов памяти после сбоя. Данные записываются в учетную запись хранения для параметра диагностики. При желании можно указать контейнер blob.

    Снимок экрана, на котором показана вкладка

  8. На вкладке "Приемники" укажите, следует ли отправлять данные в расположения, отличные от хранилища Azure. Если выбрать Azure Monitor, данные о производительности гостевой ОС будут отправляться в метрики Azure Monitor. Невозможно настроить приемник центров событий с помощью портала Azure.

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

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

    Снимок экрана с предупреждением о управляемом удостоверении.

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

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

  10. Выберите Сохранить, чтобы сохранить конфигурацию.

Примечание.

Конфигурация расширения диагностики может быть отформатирована в формате JSON или XML, но любая конфигурация, выполненная в портале Azure, всегда будет храниться в формате JSON. Если вы используете формат XML для другого метода конфигурации, а затем изменяете конфигурацию с помощью портала Azure, параметры будут заменены на JSON. Кроме того, нет возможности настроить период хранения для этих журналов.

Шаблон Resource Manager

Сведения о том, как развернуть расширение диагностики с помощью шаблонов Azure Resource Manager, см. в статье «Использование мониторинга и диагностики с помощью шаблонов Azure Resource Manager на Windows VM».

Развертывание с помощью Azure CLI

Azure CLI можно использовать для развертывания расширения Azure Diagnostics на существующей виртуальной машине с помощью az vm extension set, как показано в следующем примере:

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 

Защищенные параметры определяются в элементе PrivateConfig схемы конфигурации. В следующем минимальном примере файла защищенных параметров определяется учетная запись хранения. Полные сведения о частных параметрах см. в разделе "Пример конфигурации".

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

Общедоступные параметры определяются в элементе Public схемы конфигурации. Следующий минимальный пример общедоступного файла параметров позволяет собирать журналы инфраструктуры диагностики, один счетчик производительности и один журнал событий. Полные сведения о общедоступных параметрах см. в разделе "Пример конфигурации".

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

Развертывание с помощью PowerShell

PowerShell можно использовать для развертывания расширения Диагностика Azure на существующей виртуальной машине с помощью Set-AzVMDiagnosticsExtension, как показано в следующем примере:

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

Частные параметры определяются в элементе PrivateConfig. Общедоступные параметры определяются в элементе Public схемы конфигурации. Вы также можете указать сведения учетной записи хранения в качестве параметров командлета Set-AzVMDiagnosticsExtension , а не включить их в закрытые параметры.

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

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

См. также Включение системы диагностики Azure на виртуальной машине под управлением Windows с помощью PowerShell.

Хранилище данных

В следующей таблице перечислены различные типы данных, собираемых из расширения диагностики, а также сведения о том, хранятся ли они в виде таблицы или большого двоичного объекта. Данные, хранящиеся в таблицах, также могут храниться в BLOB в зависимости от параметра StorageType в общедоступной конфигурации.

Данные Тип хранилища Описание
WADDiagnosticInfrastructureLogsTable Таблица Изменения в диагностическом мониторе и конфигурации.
WADDirectoriesTable Таблица Сведения о каталогах, которые отслеживает монитор диагностики. Эта группа включает журналы IIS, журналы неудачных запросов IIS и пользовательские каталоги. Расположение файла блоб-журнала указано в поле Container, а имя блоба — в поле RelativePath. В поле AbsolutePath указано расположение и имя файла на виртуальной машине Azure.
Таблица WadLogs Таблица Журналы, написанные в коде с помощью прослушивателя трассировки.
WADСчетчикиПроизводительностиТаблица Таблица Счетчики производительности.
WADWindowsEventLogsTable (Таблица событий Windows WAD) Таблица Журналы событий Windows.
wad-iis-failedreqlogfiles BLOB Содержит сведения журналов неудачно завершенных запросов IIS.
wad-iis-logfiles BLOB Содержит сведения о журналах IIS.
кастомный BLOB Пользовательский контейнер, основанный на конфигурировании каталогов, которые отслеживаются монитором диагностики. Имя этого контейнера blob-объектов будет указано в таблице WADDirectoriesTable.

Средства для просмотра диагностических данных

Для просмотра данных после их передачи в хранилище доступны несколько инструментов. Например:

  • Проводник сервера в Visual Studio: Если вы установили средства Azure для Microsoft Visual Studio, вы можете использовать узел хранилища Azure в Проводнике сервера для просмотра блочных и табличных данных только для чтения из учетных записей хранилища Azure. Вы можете отображать данные из учетной записи локального эмулятора хранения и из учетных записей хранения, созданных для Azure. Дополнительные сведения см. в статье "Просмотр ресурсов хранилища и управление ими с помощью обозревателя серверов".
  • Microsoft Azure Storage Explorer: это автономное приложение, которое позволяет легко работать с данными хранилища Azure на Windows, OS X и Linux.
  • Azure Management Studio: это средство включает Диспетчер диагностики Azure. Используйте это для просмотра, скачивания и управления данными диагностики, собранными приложениями, работающими в Azure.

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

Сведения о пересылке данных мониторинга в Центры событий Azure см. в разделе "Отправка данных из расширения Диагностика Azure в Центры событий".