Использование Log Analytics для диагностики

Важно!

Это содержимое применимо к Виртуальному рабочему столу Azure с объектами Azure Resource Manager для Виртуального рабочего стола Azure. Если вы используете Виртуальный рабочий стол Azure (классический) без объектов Azure Resource Manager, ознакомьтесь с этой статьей.

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

  • Действия управления.
    • Позволяют отслеживать успешность выполнения попыток изменять объекты Виртуального рабочего стола Azure через API или PowerShell. Например, удалось ли кому-то успешно создать пул узлов с помощью PowerShell?
  • Веб-канал.
    • Могут ли пользователи успешно подписываться на рабочие области?
    • Видят ли пользователи все ресурсы, опубликованные в клиенте Виртуального рабочего стола?
  • Подключения:
    • Когда пользователи начинают и завершают подключение к службе?
  • Регистрация узла.
    • Был ли узел сеанса успешно зарегистрирован в службе при подключении?
  • Errors:
    • Сталкиваются ли пользователи с проблемами при выполнении определенных действий? Эта функция может создать таблицу, которая будет отслеживать данные действий при условии, что данные связаны с действиями.
  • Контрольные точки.
    • Определенные этапы, достигнутые за время существования действия. Например, во время сеанса подсистема балансировки нагрузки направила пользователя к определенному узлу, затем пользователь вошел в систему при подключении и т. д.

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

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

Примечание

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

Необходимые условия

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

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

  • идентификатор рабочей области;
  • первичный ключ рабочей области.

Эти сведения понадобятся вам позже в процессе установки.

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

Отправка данных диагностики в рабочую область

Вы можете отправлять данные диагностики из объектов Виртуального рабочего стола Azure в Log Analytics для своей рабочей области. Эту возможность можно настроить сразу при создании объектов.

Чтобы настроить Log Analytics для нового объекта, сделайте следующее:

  1. Войдите на портал Azure и выберите Виртуальный рабочий стол Azure.

  2. Перейдите к объекту (пулу узлов, группе приложений или рабочей области), для которого вам нужно собирать журналы и события.

  3. Щелкните Параметры диагностики в меню слева.

  4. Щелкните Добавить параметр диагностики в меню справа.

    Варианты, которые вы увидите на странице параметров диагностики, будут разными в зависимости от типа изменяемого объекта.

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

    Важно!

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

  5. Введите имя для конфигурации параметров и щелкните Отправить в Log Analytics. Это имя не может содержать пробелов и должно соответствовать соглашениям об именовании Azure. При настройке журналов можно выбрать все варианты, которые вы хотите добавить в Log Analytics, например контрольные точки, обработку ошибок, управление и т. д.

  6. Щелкните Сохранить.

Примечание

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

Доступ к Log Analytics

К рабочим областям Log Analytics можно обращаться с помощью портала Azure или Azure Monitor.

Доступ к Log Analytics в рабочей области Log Analytics

  1. Войдите на портал Azure.

  2. Выполните поиск по запросу рабочая область Log Analytics.

  3. В разделе служб выберите Рабочие области Log Analytics.

  4. В открывшемся списке выберите рабочую область, которую вы настроили для объекта Виртуального рабочего стола Azure.

  5. На странице рабочей области выберите Журналы. Вы можете отфильтровать список меню с помощью функции поиска.

Получение доступа к Log Analytics в Azure Monitor

  1. Войдите на портал Azure.

  2. Найдите и выберите Monitor.

  3. Выберите Журналы.

  4. Выполните инструкции на странице ведения журнала, чтобы настроить область действия для запроса.

  5. Теперь вы готовы к диагностике запросов. Все таблицы диагностики имеют префикс WVD.

Примечание

Дополнительные сведения о таблицах, которые хранятся в журналах Azure Monitor, см. в статье Справочник по данным Azure Monitor. Все таблицы, связанные с Виртуальным рабочим столом Azure, имеют метку WVD.

Частота отправки диагностических событий

Диагностические события отправляются в Log Analytics по мере готовности.

Для действий подключения Log Analytics информирует только о следующих промежуточных состояниях:

  • Запущено — когда пользователь выбирает приложение или рабочий стол и подключается к нему из клиента удаленного рабочего стола.
  • Подключено — когда пользователь успешно подключается к виртуальной машине, где размещается нужное приложение или рабочий стол.
  • Завершено — когда пользователь или сервер отключают сеанс, в котором выполнялось действие.

Примеры запросов

Изучите примеры запросов в пользовательском интерфейсе Azure Monitor Log Analytics, сделав следующее:

  1. Перейдите к рабочей области Log Analytics и выберите Журналы. Автоматически отобразится пользовательский интерфейс с примером запроса.
  2. Измените режим фильтра на Категория.
  3. Выберите Виртуальный рабочий стол Azure, чтобы изучить доступные запросы.
  4. Щелкните Выполнить, чтобы запустить выбранный запрос.

Дополнительные сведения о примере интерфейса запросов см. в статье Сохраненные запросы в Azure Monitor Log Analytics.

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

Список подключений для одного пользователя:

WVDConnections
|where UserName == "userupn"
|take 100
|sort by TimeGenerated asc, CorrelationId

Число подключений пользователя в день:

WVDConnections
|where UserName == "userupn"
|take 100
|sort by TimeGenerated asc, CorrelationId
|summarize dcount(CorrelationId) by bin(TimeGenerated, 1d)

Длительность сеансов для пользователя:

let Events = WVDConnections | where UserName == "userupn" ;
Events
| where State == "Connected"
| project CorrelationId , UserName, ResourceAlias , StartTime=TimeGenerated
| join (Events
| where State == "Completed"
| project EndTime=TimeGenerated, CorrelationId)
on CorrelationId
| project Duration = EndTime - StartTime, ResourceAlias
| sort by Duration asc

Ошибки для определенного пользователя:

WVDErrors
| where UserName == "userupn"
|take 100

Наличие определенной ошибки для других пользователей:

WVDErrors
| where CodeSymbolic =="ErrorSymbolicCode"
| summarize count(UserName) by CodeSymbolic

Примечание

  • Когда пользователь запускает сеанс полного рабочего стола, использование приложений в этом сеансе не фиксируется в контрольных точках таблицы WVDCheckpoints.
  • Столбец ResourcesAlias в таблице WVDConnections обозначает, подключен ли пользователь к полному рабочему столу или к опубликованному приложению. В этом столбце отображается только первое приложение, которое пользователь открыл за время подключения. Все опубликованные приложения, которые открывает пользователь, отслеживаются в таблице WVDCheckpoints.
  • В таблице WVDErrors сохраняются сведения об ошибках управления, проблемах с регистрацией узлов и других проблемах, возникающих, когда пользователь подписывается на список приложений или рабочих столов.
  • Сведения в таблице WVDErrors также помогают выявлять проблемы, которые могут быть решены с помощью задач администрирования. Для этих типов проблем значение ServiceError всегда должно быть равно false. Если значение ServiceError равно true, такую проблему следует эскалировать в корпорацию Майкрософт. Не забудьте указать значение CorrelationID для передаваемых ошибок.
  • При отладке проблем с подключением в некоторых случаях сведения о клиенте могут отсутствовать, даже если события подключения завершены. Это относится к таблицам WVDConnections и WVDCheckpoints.

Дальнейшие действия

Чтобы просмотреть распространенные сценарии ошибок, которые может определить функция диагностики, см. раздел Выявление и диагностика неполадок.