Настройка системы диагностики для облачных служб и виртуальных машин Azure

Примечание.

Эта статья относится к Azure Облачные службы (классической), которая теперь устарела для новых клиентов и будет прекращена 31 августа 2024 года. Существующие службы, созданные с помощью этой технологии, по-прежнему поддерживаются с помощью Azure Облачные службы (расширенная поддержка). Для новой разработки рекомендуется использовать более новый тип службы, предназначенный для конкретной цели, например службу приложение Azure, Функции Azure или приложения контейнеров Azure. Последний список доступных служб см . в каталоге продуктов Azure.

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

Эта статья содержит сведения о том, как использовать Visual Studio, чтобы включить и настроить систему диагностики Azure до и после развертывания. Узнайте, как настроить диагностику в Azure Виртуальные машины, как выбрать типы диагностика данных для сбора и как просмотреть данные после сбора.

Для настройки системы диагностики Azure можно использовать один из следующих вариантов:

  • Измените параметры диагностики в диалоговом окне конфигурации диагностики в Visual Studio. Параметры сохраняются в файле с именем диагностика.wadcfgx. Вы также можете напрямую изменить файл конфигурации. Если вы измените файл вручную, изменения конфигурации вступят в силу после следующего развертывания облачной службы в Azure или следующего запуска службы в эмуляторе.

  • Используйте облачные Обозреватель или серверные Обозреватель в Visual Studio 2019 или более ранней версии, чтобы изменить параметры диагностика для облачной службы или виртуальной машины, работающей.

Чтобы настроить Диагностика Azure, измените параметры диагностика в диалоговом окне "Конфигурация диагностики" в Visual Studio. Параметры сохраняются в файле с именем диагностика.wadcfgx. Вы также можете напрямую изменить файл конфигурации. Если вы измените файл вручную, изменения конфигурации вступят в силу после следующего развертывания облачной службы в Azure или следующего запуска службы в эмуляторе.

Предупреждение

В Visual Studio 2022 устаревший эмулятор служба хранилища Azure был заменен эмулятором Azurite при отладке проектов облачной службы. Этот эмулятор Azurite не работает с подключаемым модулем Диагностика Azure, который обеспечивает поддержку Диагностика Azure при выполнении и тестировании локально. Если требуется подключаемый модуль для локальных сценариев выполнения и тестирования, можно обновить строка подключения в конфигурации локальной службы (.cscfg) на учетную запись служба хранилища Azure (см. раздел "Управление строка подключения для учетных записей хранения") или скачать предыдущий служба хранилища Azure эмуляторе. В выпуске Visual Studio 17.10 локальный подключаемый модуль Диагностика Azure устарел и будет отключен по умолчанию с параметром включения в этом выпуске. Из-за нерекомендуемого модуля подключаемый модуль может быть удален в будущем выпуске Visual Studio. Этот подключаемый модуль используется только с локальным эмулятором вычислений Azure и отключением не влияет на развернутые Облачные службы, использующие расширение Диагностика Azure в Azure. Чтобы включить подключаемый модуль диагностика в Visual Studio 17.10, добавьте следующий параметр свойства в любой PropertyGroup файл проекта: <EnableEmulatorDiagnosticsPlugin>True</EnableEmulatorDiagnosticsPlugin>

Определение учетной записи хранения диагностических данных в Visual Studio

  • Если в .cscfg файле указана диагностика строка подключения, Visual Studio использует его для настройки расширения диагностика во время публикации и при создании XML-файлов общедоступной конфигурации во время упаковки.
  • Если диагностика строка подключения не указан в файле, Visual Studio возвращается к использованию учетной записи хранения, указанной в .cscfg.wadcfgx файле, для настройки расширения диагностика для публикации и создания общедоступных XML-файлов конфигурации во время упаковки.
  • Диагностика строка подключения в .cscfg файле имеет приоритет над учетной записью хранения в .wadcfgx файле. Если в файле указан .cscfg диагностика строка подключения, Visual Studio использует этот строка подключения и игнорирует учетную запись хранения..wadcfgx

Что делает "Обновление хранилища средств разработки строка подключения..." проверка box делать?

Хранилище разработки обновлений строка подключения для диагностики и кэширования с учетными данными учетной записи хранения Microsoft Azure при публикации в Microsoft Azure проверка box — это удобный способ обновления любых учетных записей хранения разработки строка подключения с помощью служба хранилища Azure учетная запись, указанная во время публикации.

Например, если выбрать этот проверка box и диагностика строка подключения указываетUseDevelopmentStorage=true, при публикации проекта в Azure Visual Studio автоматически обновляет диагностика строка подключения с учетной записью хранения, указанной в мастере публикации.. Но если в строке подключения диагностики указана реальная учетная запись хранения, будет использоваться именно она.

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

В Visual Studio при запуске службы в эмуляторе перед ее развертыванием можно собирать диагностические данные для ролей, выполняемых в Azure. Все изменения параметров диагностики в Visual Studio сохраняются в файл конфигурации diagnostics.wadcfgx. Эти параметры определяют учетную запись хранения, в которую сохраняются диагностические данные после развертывания облачной службы.

Предупреждение

Когда вы включаете диагностику в существующей роли, при развертывании пакета все настроенные расширения будут отключены. Например:

  • диагностика агента мониторинга Microsoft;
  • мониторинг системы безопасности Microsoft Azure;
  • Microsoft Antimalware
  • Microsoft Monitoring Agent
  • агент профилировщика службы Microsoft;
  • расширение домена Microsoft Azure;
  • расширение Диагностики Azure для Windows;
  • расширение удаленного рабочего стола Microsoft Azure;
  • сборщик журналов Microsoft Azure.

Развернув обновленную роль, вы сможете сбросить расширения с использованием портала Azure или PowerShell.

Включение диагностики в Visual Studio перед развертыванием

  1. В контекстном меню для роли выберите Свойства. В диалоговом окне "Свойства роли" выберите вкладку "Конфигурация".

  2. В разделе "Диагностика" убедитесь, что выбран флажок "Включить диагностику проверка".

    Доступ к параметру

  3. Чтобы указать учетную запись хранения для данных диагностика, нажмите кнопку с многоточием (...).

    Выбор учетной записи хранения

  4. В диалоговом окне create служба хранилища Подключение ion String укажите, нужно ли подключаться с помощью эмулятора служба хранилища Azure, подписки Azure или учетных данных, введенных вручную.

    Диалоговое окно учетной записи хранения

    • Если выбрать эмулятор служба хранилища Microsoft Azure, то для строка подключения задано UseDevelopmentStorage=trueзначение .
    • Если выбрать Ваша подписка, вы можете выбрать подписку Azure, которую хотите использовать, и ввести имя учетной записи. Чтобы управлять подписками Azure, выберите Управление учетными записями.
    • Если вы выберете Введенные вручную учетные данные, введите имя и ключ учетной записи Azure, которую хотите использовать.
  5. Чтобы просмотреть диалоговое окно конфигурации диагностики, выберите Настройка. Каждая вкладка (кроме вкладок Общие и Каталоги журналов) соответствует определенному источнику диагностических данных, которые можно собирать. По умолчанию открывается вкладка Общие, где вы можете выбрать следующие режимы сбора диагностических данных: Только ошибки, Все сведения и Пользовательский план. Параметр ошибок по умолчанию использует только наименьший объем хранилища, так как он не передает предупреждения или трассировки сообщений. Режим Все сведения передает больше всего информации и использует самый большой объем хранилища, поэтому он наиболее затратный.

    Примечание.

    Минимальный поддерживаемый размер "Квота диска в МБ" составляет 50 МБ, а размер по умолчанию — 4 ГБ. Однако если вы собираете дампы памяти, увеличьте это до более высокого значения, например 10 ГБ.

    Включение Диагностика Azure и конфигурации

  6. В нашем примере мы выберем режим Пользовательский план, в котором вы можете настроить собранные данные.

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

  8. На каждой вкладке диагностика данных, которые требуется собрать, выберите параметр Enable Transfer of <log type> проверка box. Например, если вы хотите собирать журналы приложений, на вкладке "Журналы приложений" выберите пункт "Включить передачу журналов приложений" проверка box. Установите также все остальные параметры, необходимые для каждого типа диагностических данных. Сведения о параметрах на каждой вкладке см. в разделе Настройка источников диагностических данных далее в этой статье.

  9. После включения сбора всех нужных данных диагностика нажмите кнопку "ОК".

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

Включение диагностика в Azure Виртуальные машины

В Visual Studio можно собирать диагностика данные для Azure Виртуальные машины.

Включение диагностика в Azure Виртуальные машины

  1. В обозревателе сервера выберите узел Azure и подключитесь к подписке Azure (если это еще не сделано).

  2. Разверните узел Виртуальные машины . Вы можете создать виртуальную машину или выбрать имеющийся узел.

  3. В контекстном меню нужной виртуальной машины выберите Настроить. Откроется диалоговое окно конфигурации виртуальной машины.

    Настройка виртуальной машины Azure

  4. Если он еще не установлен, добавьте расширение диагностики агента Log Analytics. Это расширение позволяет собирать диагностические данные для виртуальной машины Azure. В разделе "Установленные расширения" в раскрывающемся списке "Выбор доступного расширения" выберите "Диагностика агента мониторинга Майкрософт".

    Установка расширения виртуальной машины Azure

    Примечание.

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

  5. Чтобы добавить расширение и просмотреть информацию в диалоговом окне конфигурации диагностики, выберите Добавить.

  6. Чтобы указать учетную запись хранения, выберите Настройка и нажмите кнопку ОК.

    Каждая вкладка (кроме вкладок Общие и Каталоги журналов) соответствует определенному источнику диагностических данных, которые можно собирать.

    Включение Диагностика Azure и конфигурации

    По умолчанию открывается вкладка Общие, где вы можете выбрать следующие режимы сбора диагностических данных: Только ошибки, Все сведения и Пользовательский план. Параметр по умолчанию , только ошибки, принимает наименьший объем хранилища, так как он не передает предупреждения или трассировки сообщений. В режиме Все сведения передается больше всего информации; это самый затратный по объему хранения вариант.

  7. В нашем примере мы выберем режим Пользовательский план , в котором вы можете настроить параметры сбора данных.

  8. В поле Квота диска в МБ вы указываете, сколько хотите выделить места для диагностических данных в своей учетной записи хранения. Значение по умолчанию можно изменять.

  9. На каждой вкладке диагностика данных, которые вы хотите собрать, выберите параметр Enable Transfer of <log type> проверка box.

    Например, если вы хотите собирать журналы приложений, выберите параметр Enable transfer of Application Logs проверка box на вкладке "Журналы приложений". Кроме того, укажите другие сведения, необходимые для каждого типа данных диагностика. Сведения о параметрах на каждой вкладке см. в разделе Настройка источников диагностических данных далее в этой статье.

  10. После включения сбора всех нужных данных диагностика нажмите кнопку "ОК".

  11. Сохраните обновленный проект.

    Сообщение в окне Журнал действий Microsoft Azure оповещает о выполненном обновлении виртуальной машины.

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

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

Журналы приложений

Журналы приложений содержат диагностические данные, сформированные веб-приложением. Если вы хотите записать журналы приложений, выберите параметр Enable transfer of Application Logs проверка box. Чтобы увеличить или уменьшить интервал между перемещениями журналов приложений в учетную запись хранения, измените значение параметра Период передачи (мин.). Вы можете также изменить объем сведений, сохраняемых в журнале, установив значение Уровень журнала. Например, выбрав уровень Подробный, вы будете получать подробные сведения, а выбрав уровень Критический — только критические ошибки. Если у вас есть конкретный поставщик диагностика, который выдает журналы приложений, можно записать журналы, добавив GUID поставщика в поле GUID поставщика.

Журналы приложений

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

журналы событий Windows;

Чтобы записать журналы событий Windows, выберите параметр Enable transfer of Windows Event Logs проверка box. Чтобы увеличить или уменьшить интервал между перемещениями журналов событий в учетную запись хранения, измените значение параметра Период передачи (мин.). Выберите проверка boxes для типов событий, которые требуется отслеживать.

Журналы событий

Если вы хотите указать пользовательский источник данных, введите его в текстовое поле имени> источника данных и нажмите кнопку "Добавить".< Источник данных добавляется в файл diagnostics.cfcfg.

Счетчики производительности

Сведения о счетчиках производительности помогут вам найти проблемы в системе и оптимизировать производительность системы и приложений. Дополнительные сведения см. в статье Создание и использование счетчиков производительности в приложении Azure. Чтобы записать счетчики производительности, выберите "Включить передачу счетчиков производительности" проверка box. Чтобы увеличить или уменьшить интервал между перемещениями журналов событий в учетную запись хранения, измените значение параметра Период передачи (мин.). Выберите проверка boxes для счетчиков производительности, которые требуется отслеживать.

Счетчики производительности

Чтобы отслеживать счетчик производительности, который не указан, введите счетчик производительности с помощью предлагаемого синтаксиса. а затем выберите Добавить. Операционная система на виртуальной машине определяет, какие счетчики производительности можно отслеживать. Дополнительные сведения о синтаксисе см. в разделе "Указание пути счетчика".

Журналы инфраструктуры

Журналы инфраструктуры содержат сведения об инфраструктуре диагностики Azure и модулях RemoteAccess и RemoteForwarder. Чтобы собрать сведения о журналах инфраструктуры, выберите параметр Enable transfer of Infrastructure Logs проверка box. Чтобы увеличить или уменьшить интервал между перемещениями журналов инфраструктуры в учетную запись хранения, измените значение параметра Период передачи (мин.).

Журналы инфраструктуры диагностики

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

Каталоги журналов

В каталоги журналов собираются данные из выбранных вами папок, а также из каталогов, в которых хранятся журналы запросов к службам IIS и журналы неудачно завершенных запросов. Чтобы записать каталоги журналов, выберите параметр Enable transfer of Log Directoryies проверка box. Чтобы увеличить или уменьшить интервал между перемещениями журналов в учетную запись хранения, измените значение параметра Период передачи (мин.).

Выберите проверка почтовые ящики журналов, которые требуется собрать, например журналы IIS и журналы неудачных запросов. Имена контейнеров хранилища задаются автоматически, но вы можете их изменить.

Вы можете собирать журналы из любой папки. Укажите путь к ней в разделе Журнал из абсолютного каталога и выберите Добавить каталог. Журналы сохраняются в указанные контейнеры.

Каталоги журналов

журналы трассировки событий Windows.

Если вы используете трассировку событий для Windows (ETW) и хотите записать журналы ETW, выберите параметр Enable transfer of ETW Logs проверка box. Чтобы увеличить или уменьшить интервал между перемещениями журналов в учетную запись хранения, измените значение параметра Период передачи (мин.).

События записываются из указанных вами источников событий и манифестов событий. Чтобы указать источник событий, введите его имя в разделе Источники событий, а затем выберите Добавить источник событий. Аналогичным образом вы можете указать манифест событий в разделе Манифесты событий и выбрать Добавить манифест событий.

журналы трассировки событий Windows.

ASP.NET поддерживает структуру ETW с использованием классов в пространстве имен System.Diagnostics.aspx. Пространство имен Microsoft.WindowsAzure.Diagnostics, которое наследует и расширяет стандартные классы System.Diagnostics.aspx, позволяет использовать System.Diagnostics.aspx как платформу ведения журналов в среде Azure. Дополнительные сведения см. в статьях Управление протоколированием и трассировкой в Windows Azure и Включение системы диагностики Azure в облачных службах Azure.

Аварийные дампы

Чтобы получить сведения о сбоях экземпляра роли, выберите параметр Enable transfer of Crash Dumps проверка box. (Так как ASP.NET обрабатывает большинство исключений, это обычно полезно только для рабочих ролей.) Чтобы увеличить или уменьшить процент дискового пространства, посвященного аварийным дампам, измените значение квоты каталога (%) Вы можете изменить контейнер хранения аварийных дампов, а также выбрать, какой дамп нужно сохранять: полный или мини.

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

Аварийные дампы

Дополнительные сведения см. в статье "Управление ведением журнала и трассировкой" в Microsoft Azure.

Просмотр диагностических данных

После сбора диагностика данных для облачной службы или виртуальной машины его можно просмотреть.

Просмотр диагностических данных облачной службы

  1. Разверните и запустите облачную службу обычным образом.

  2. Диагностические данные можно просмотреть в виде отчета, который создает Visual Studio, или в виде таблиц в учетной записи хранения. Чтобы просмотреть данные в отчете, откройте Cloud Explorer или обозреватель сервера, затем откройте контекстное меню интересующего вас узла и выберите View Diagnostic Data (Просмотреть диагностические данные).

    Просмотр данных диагностики

    Появится отчет по имеющимся данным.

    Отчет о Диагностике Microsoft Azure в Visual Studio

    Если в нем не содержатся самые свежие данные, вам следует дождаться завершения очередного периода передачи.

    Для немедленного обновления данных щелкните ссылку Обновить. Чтобы данные обновлялись автоматически, выберите интервал в раскрывающемся списке автоматического обновления . Чтобы экспортировать данные об ошибках, нажмите кнопку Экспорт в CSV. Будет создан CSV-файл, который вы сможете открыть в виде листа Excel.

    В Cloud Explorer или обозревателе сервера откройте учетную запись хранения, связанную с развертыванием.

  3. Откройте диагностические таблицы в средстве просмотра таблиц и изучите собранные данные. Для просмотра пользовательских журналов и журналов служб IIS вы можете открыть контейнер больших двоичных объектов. Указанная ниже таблица содержит список таблиц или контейнеров больших двоичных объектов, содержащих данные для файлов разных журналов. В дополнение к данным соответствующего журнала таблицы содержат поля EventTickCount, DeploymentId, Role и RoleInstance. Они помогут вам понять, какая виртуальная машина и роль создали эти данные, а также когда эти данные были созданы.

    Диагностические данные Description Расположение
    Журналы приложений Журналы, которые ваш код создает при вызове класса System.Diagnostics.Trace. WADLogsTable
    Журналы событий Данные, собранные из журналов событий Windows на виртуальных машинах. В этих журналах хранится информация ОС Windows, но приложения и службы также могут записывать в них ошибки или данные. WADWindowsEventLogsTable
    Счетчики производительности Вы можете собирать данные на любом счетчике производительности, доступном на виртуальной машине. Операционная система предоставляет различные счетчики, которые позволяют изучать всевозможную статистику, например использование памяти и загруженность процессора. WADPerformanceCountersTable
    Журналы инфраструктуры Журналы, которые создает сама инфраструктура диагностики. WADDiagnosticInfrastructureLogsTable
    Журналы IIS Журналы, которые записывают веб-запросы. Если в облачную службу поступает очень много запросов, эти журналы могут быть длинными. Рекомендуется собирать и хранить эти данные только при необходимости. Журналы неудачных запросов можно найти в контейнере BLOB-объектов в wad-IIS-failedreqlogs в пути для этого развертывания, роли и экземпляра. Вы можете найти полные журналы в wad-IIS-logfiles. В таблицу WADDirectories вносятся записи для каждого файла.
    Аварийные дампы Предоставляет двоичные образы процесса облачной службы (обычно рабочая роль). Контейнер больших двоичных объектов wad-crush-dumps
    Файлы пользовательских журналов Настроенные вами журналы. Вы можете в коде задать расположение файлов пользовательских журналов в своей учетной записи хранения, например указать для них пользовательский контейнер больших двоичных объектов.
  4. Если данные любого типа усекаются, вы можете попробовать увеличить размер буфера для этого типа данных или уменьшить интервал между передачами данных из виртуальной машины в учетную запись хранения.

  5. Время от времени удаляйте данные из учетной записи хранения, чтобы снизить общие затраты на хранение. Это необязательно.

  6. При полном развертывании файл диагностика.cscfg обновляется в Azure, а облачная служба выбирает любые изменения в конфигурации диагностика. Если вместо этого обновить существующее развертывание, cscfg-файл не обновляется в Azure. Но вы и в этом случае можете изменить конфигурацию диагностики, выполнив действия, описанные в следующем разделе. Дополнительные сведения о полном развертывании и обновлении существующего развертывания см. в статье Мастер публикации приложений Azure.

Просмотр диагностических данных виртуальной машины

  1. Выберите в контекстном меню виртуальной машины пункт Просмотр данных диагностики.

    Просмотр диагностических данных на виртуальной машине Azure

    Отобразится диалоговое окно Сводка диагностики.

    Сводка по диагностическим данным виртуальной машины

    Если в нем не содержатся самые свежие данные, вам следует дождаться завершения очередного периода передачи.

    Для немедленного обновления данных щелкните ссылку Обновить. Чтобы данные обновлялись автоматически, выберите интервал в раскрывающемся списке автоматического обновления . Чтобы экспортировать данные об ошибках, нажмите кнопку Экспорт в CSV. Будет создан CSV-файл, который вы сможете открыть в виде листа Excel.

Настройка диагностики облачной службы после развертывания

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

Настройка диагностики для работающей облачной службы

  1. В обозревателе сервера разверните узел Облачные службы, а затем разверните список узлов, чтобы найти анализируемую роль или экземпляр (или и то, и другое).

    Настройка диагностики

  2. В контекстном меню узла экземпляра или роли выберите пункт Обновить параметры диагностики, а затем выберите параметры диагностики, которые желаете собирать.

    Сведения о параметрах конфигурации см. в разделе Настройка источников диагностических данных в этой статье. Информацию о просмотре диагностических данных см. в разделе Просмотр диагностических данных в этой статье.

    Когда вы изменяете настройки сбора данных в обозревателе сервера, эти изменения остаются в силе до следующего полного развертывания облачной службы. Если вы используете стандартные параметры публикации, внесенные изменения не будут перезаписаны. По умолчанию при публикации выполняется обновление имеющегося развертывания, а не полное повторное развертывание. Чтобы убедиться, что параметры очищались во время развертывания, перейдите на вкладку "Расширенный Параметры" в мастере публикации, а затем снимите флажок обновления развертывания проверка. При повторном развертывании с помощью этого проверка box снимите флажок, параметры отменить изменения в .wadcfgx файле, заданные в редакторе свойств для роли. Если вы обновляете развертывание, Azure сохраняет старые настройки.

Устранение неполадок облачной службы Azure

Если вы столкнетесь с проблемами в проектах облачных служб (например, роль "зависает" в состоянии "занято", постоянно перезапускается или выдает внутреннюю ошибку сервера), вы можете использовать несколько инструментов и методов для диагностики и устранения этой проблемы. Конкретные примеры распространенных проблем и решений, а также общие сведения о концепциях и средствах, которые можно использовать для диагностики и устранения этих ошибок, см. в статье "Платформа Azure как услуга" (PaaS) диагностика данных.

Вопросы и ответы

Что такое размер буфера и каким он должен быть?

Для каждого экземпляра виртуальной машины имеются квоты, которые ограничивают объем хранения диагностических данных в локальной файловой системе. Кроме того, вы определяете размер буфера для каждого доступного типа диагностических данных. Этот буфер выполняет роль индивидуальной квоты для соответствующего типа данных. Чтобы определить общую квоту и объем свободной памяти, просмотрите нижнюю часть диалогового окна для типа диагностических данных. Если вы укажете большие размеры буферов или большее количество типов данных, можно превысить общую квоту. Общую квоту можно изменить, изменив файл конфигурации диагностика.wadcfgx. Данные диагностика хранятся в той же файловой системе, что и данные приложения. Если в приложении используется большое количество дискового пространства, не следует увеличивать общую квоту диагностика.

Что такое период передачи и каким он должен быть?

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

Какой часовой пояс используется для отметок времени?

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

  • PreciseTimeStamp. Отметка времени событий ETW. Это время регистрации события клиентом.
  • TIMESTAMP. Значение для PreciseTimeStamp с округлением до ближайшей границы периода передачи. Например, если вы используете период передачи 5 минут, а событие регистрируется в 00:17:12, в поле TIMETAMP установлено значение 00:15:00.
  • Timestamp. Отметка времени создания записи в таблице Azure.

Как снизить затраты на сбор диагностической информации?

По умолчанию выбраны значения параметров (Уровень ведения журнала имеет значение Ошибка, а Период передачи имеет значение 1 минута), которые обеспечивают минимальные затраты. Затраты на вычисления увеличиваются, когда вы собираете больше диагностических данных или уменьшаете период передачи. Не собираем больше данных, чем вам нужно, и не забудьте отключить сбор данных, если вам больше не нужно. Вы всегда можете включить эту функцию снова, даже во время выполнения, как описано ранее в этой статье.

Как собирать журналы неудачных запросов службы IIS?

По умолчанию службы IIS не собирают журналы неудачных запросов. Чтобы настроить сбор журналов неудачных запросов в службах IIS, измените файл web.config для веб-роли.

Я не получаю сведения о трассировки из методов RoleEntryPoint, таких как OnStart. Что я делаю не так?

Методы RoleEntryPoint вызываются в контексте WAIISHost.exe, а не IIS. Сведения о конфигурации в web.config, которые обычно обеспечивают трассировку, не применяются. Чтобы устранить эту проблему, добавьте в проект веб-роли CONFIG-файл с именем, которое соответствует имени выходной сборки, в которой размещен код RoleEntryPoint. В проекте веб-роли по умолчанию имя файла конфигурации .config должно быть WAIISHost.exe.config. Добавьте в этот файл следующие строки:

<system.diagnostics>
  <trace>
      <listeners>
          <add name "AzureDiagnostics" type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener">
              <filter type="" />
          </add>
      </listeners>
  </trace>
</system.diagnostics>

В окне Свойства задайте для свойства Копировать в выходной каталог значение Всегда копировать.

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