Трассировка потока в приложении Облачных служб (классических) с помощью системы диагностики Azure
Внимание
Облачные службы (классическая версия) теперь устарела для всех клиентов с 1 сентября 2024 года. Все существующие запущенные развертывания будут остановлены и завершены корпорацией Майкрософт, и данные будут постоянно потеряны начиная с октября 2024 года. Для новых развертываний следует использовать Облачные службы Azure с расширенной поддержкой. Это новая модель развертывания на основе Azure Resource Manager.
Трассировка — это способ отслеживать выполнение приложения во время его работы. Сведения об ошибках и выполнении приложений можно записывать в журналы, текстовые файлы или на устройства для последующего анализа с помощью классов System.Diagnostics.Trace, System.Diagnostics.Debug и System.Diagnostics.TraceSource. Дополнительные сведения о трассировке см. в статье Tracing and Instrumenting Applications (Трассировка и инструментирование приложений).
Использование трассировочных операторов и переключателей
Чтобы реализовать трассировку в приложении облачных служб, добавьте класс DiagnosticMonitorTraceListener в конфигурацию приложения и вызовите метод System.Diagnostics.Trace или System.Diagnostics.Debug в коде приложения. Используйте файл конфигурации app.config для рабочих ролей и web.config для веб-ролей. При создании новой размещенной службы с помощью шаблона Visual Studio Диагностика Azure автоматически добавляется в проект, а средство DiagnosticMonitorTraceListener добавляется в соответствующий файл конфигурации для добавленных ролей.
Дополнительные сведения о размещении трассировочных операторов см. в статье How to: Add Trace Statements to Application Code (Добавление трассировочных операторов в код приложения).
Процессом и масштабом трассировки можно управлять. Для этого добавьте в код переключатели трассировки. Трассировка позволяет отслеживать состояние приложения в рабочей среде. Мониторинг состояния приложения особенно важен в бизнес-приложении, использующего несколько компонентов, работающих на нескольких компьютерах. Дополнительные сведения см. в статье How to: Configure Trace Switches (Настройка переключателей трассировки).
Настройка прослушивателя трассировки в приложении Azure
Использование элементов Trace, Debug и TraceSource предполагает настройку прослушивателей для сбора и записи отправляемых сообщений. Прослушиватели собирают, хранят и перенаправляют сообщения трассировки. Они направляют выходные данные трассировки в соответствующий целевой объект, например журнал, окно или текстовый файл. Система диагностики Azure использует класс DiagnosticMonitorTraceListener .
Перед выполнением следующей процедуры необходимо инициализировать монитор диагностики Azure. Чтобы инициализировать диагностический монитор Azure, см. статью "Включение диагностики в Microsoft Azure".
Примечание.
Если вы используете шаблоны, предоставляемые Visual Studio, конфигурация прослушивателя добавляется автоматически.
Добавление прослушивателя трассировки
Откройте файл web.config или app.config для своей роли.
Добавьте в файл указанный ниже код. Измените атрибут Version, чтобы использовать номер версии сборки, на которую вы ссылаетесь. Версия сборки не обязательно изменяется при каждом выпуске пакета SDK Для Azure, если в нем нет обновлений.
<system.diagnostics> <trace> <listeners> <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="AzureDiagnostics"> <filter type="" /> </add> </listeners> </trace> </system.diagnostics>
Внимание
Убедитесь, что у вас есть ссылка проекта на сборку Microsoft.WindowsAzure.Diagnostics. Обновите номер версии в предыдущем xml, чтобы соответствовать версии указанной сборки Microsoft.WindowsAzure.Diagnostics.
Сохраните файл конфигурации.
Дополнительные сведения о прослушивателях см. здесь.
Добавив прослушиватель, вы можете добавить в код трассировочные операторы.
Добавление трассировочного оператора в код
- Откройте исходный файл приложения. Например, файл <RoleName> CS для рабочей роли или веб-роли.
- Добавьте следующую директиву using, если она отсутствует:
using System.Diagnostics;
- Добавьте трассировочные операторы, чтобы записывать сведения о состоянии приложения. Для форматирования выходных данных инструкции Trace можно использовать различные методы. Дополнительные сведения об этом см. в статье How to: Add Trace Statements to Application Code (Добавление трассировочных операторов в код приложения).
- Сохраните исходный файл.