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


Программа Service Trace Viewer (SvcTraceViewer.exe)

Программа Windows Communication Foundation (WCF) Service Trace Viewer позволяет анализировать диагностические трассировки, создаваемые инфраструктурой WCF. Программа Service Trace Viewer предоставляет возможность простого слияния, просмотра и фильтрации сообщений трассировки в журнале, чтобы можно было диагностировать, исправлять и проверять неисправности служб WCF.

Настройка трассировки

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

Трассировку можно настроить с помощью файла конфигурации приложения: Web.config (для веб-приложений) или имя_приложения.config (для резидентных приложений). Ниже приведен один из примеров:

<system.diagnostics>
    <trace autoflush="true" />
    <sources>
            <source name="System.ServiceModel" 
                    switchValue="Information, ActivityTracing"
                    propagateActivity="true">
            <listeners>
               <add name="sdt" 
                   type="System.Diagnostics.XmlWriterTraceListener" 
                   initializeData= "SdrConfigExample.e2e" />
            </listeners>
         </source>
    </sources>
</system.diagnostics>

В этом примере указываются имя и тип прослушивателя трассировки. Прослушиватель имеет имя sdt, а в качестве типа добавляется стандартный прослушиватель трассировки .NET Framework (System.Diagnostics.XmlWriterTraceListener). С помощью атрибута initializeData в качестве имени файла журнала для этого прослушивателя задается SdrConfigExample.e2e. Для файла журнала можно заменить полный путь на простое имя файла.

В этом примере в корневом каталоге создается файл с именем SdrConfigExample.e2e. Когда этот файл открывается в просмотре трассировки, как описано в разделе «Открытие и просмотр файлов трассировки WCF», можно просмотреть все отправленные сообщения.

Уровень трассировки контролируется параметром switchValue. Доступные уровни трассировки приведены в следующей таблице.

Уровень трассировки Описание

Critical

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

  • Домен приложения вышел из строя из-за необработанного исключения.

  • Не удается запустить приложение.

  • Сообщение, являющееся причиной сбоя, произошло из процесса MyApp.exe.

Error

  • Позволяет записывать в журнал все исключения. Уровень Error можно использовать в следующих ситуациях.

  • Произошел сбой кода из-за исключения недопустимого приведения.

  • Из-за исключения "не удалось создать конечную точку" происходит сбой приложения при запуске.

Warning

  • Существует условие, которое впоследствии может привести к ошибке или критическому сбою. Этот уровень можно использовать в следующих ситуациях.

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

  • Принимающая очередь заполнена на 98%.

Information

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

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

  • Произошел сбой при создании привязки HTTP.

Verbose

  • Трассировка уровня отладки как для пользовательского кода, так и для обслуживания. Этот уровень используется в следующих ситуациях.

  • Отсутствует уверенность в том, какой метод в коде был вызван, когда произошел сбой.

  • Настроена неверная конечная точка, и не удалось запустить службу из-за блокировки записи в хранилище резервирования.

ActivityTracing

События переходов между действиями по обработке и компонентами.

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

  • Трассировки границ действий: запуск и остановка.

  • Трассировки для перенаправлений.

С помощью add можно задать имя и тип прослушивателя трассировки, который требуется использовать. В примере конфигурации прослушиватель имеет имя sdt, а в качестве типа добавляется стандартный прослушиватель трассировки .NET Framework (System.Diagnostics.XmlWriterTraceListener). Чтобы задать имя файла журнала для этого прослушивателя, используйте initializeData. Кроме того, можно заменить простое имя файла полным путем.

Использование программы Service Trace Viewer

Открытие и просмотр файлов трассировки WCF

Программа Service Trace Viewer поддерживает три типа файлов:

  • файлы трассировки WCF (SVCLOG);

  • файлы трассировки событий (ETL);

  • файлы трассировки Crimson.

Программа Service Trace Viewer позволяет открыть любой поддерживаемый файл трассировки, добавить или интегрировать дополнительные файлы трассировки, а также открыть и выполнить слияние группы файлов трассировки одновременно.

Открытие файла трассировки

  1. Запустите Service Trace Viewer: в командном окне перейдите в папку установки WCF (C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin) и введите SvcTraceViewer.exe.
ms732023.note(ru-ru,VS.100).gifПримечание
Программу Service Trace Viewer можно ассоциировать с двумя типами файлов: SVCLOG и STVPROJ. С помощью двух параметров в командной строке можно регистрировать и отменять регистрацию расширений файлов.

/register: зарегистрировать связь расширений файлов "SVCLOG" и "STVPROJ" с программой SvcTraceViewer.exe.

/unregister: отменить регистрацию связи расширений файлов "SVCLOG" и "STVPROJ" с программой SvcTraceViewer.exe.

  1. При запуске Service Trace Viewer щелкните меню Файл и выберите Открыть. Перейдите в папку, где хранятся файлы трассировки.

  2. Дважды щелкните имя файла трассировки, который требуется открыть.

    ms732023.note(ru-ru,VS.100).gifПримечание
    Щелкните несколько файлов трассировки, удерживая нажатой клавишу SHIFT, и откройте их одновременно. Service Trace Viewer производит слияние содержимого всех файлов и отображает данные в одном представлении. Например, можно открыть файлы трассировки как для клиента, так и для службы. Это удобно, если в конфигурации включено ведение журнала сообщений и распространение действий. Таким образом, можно проверить обмен сообщениями между клиентом и службой. Также можно перетащить несколько файлов в средство просмотра или использовать вкладку Проект. Дополнительные сведения см. в разделе "Управление проектом".

  3. Для добавления дополнительных файлов трассировки в открытую коллекцию щелкните меню Файл и выберите Добавить. В открывшемся окне перейдите в расположение файлов трассировки и дважды щелкните левой кнопкой мыши файл, который требуется добавить.

ms732023.Caution(ru-ru,VS.100).gifВнимание!
Не рекомендуется загружать файлы журнала трассировки размером более 200 МБ. Загрузка файла, размер которого превышает указанное значение, может занять длительное время в зависимости от ресурсов компьютера. Программа Service Trace Viewer может не отвечать в течение длительного времени или исчерпать память компьютера. Во избежание этого рекомендуется настроить частичную загрузку. Дополнительные сведения см. в разделе «Загрузка больших файлов трассировки».

Трассировка событий и трассировка Crimson

Собственный формат средства просмотра — это формат трассировки действий WCF. Трассировки, создаваемые в различных форматах, должны преобразовываться перед отображением в средстве просмотра. На данный момент кроме формата трассировки действий средство просмотра поддерживает трассировку событий и трассировку Crimson.

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

ms732023.note(ru-ru,VS.100).gifПримечание
Для сохранения преобразованных данных трассировки требуется свободное пространство на диске. Перед запуском преобразования убедитесь, что на диске достаточно свободного пространства для сохранения данных. В противном случае преобразование не будет выполнено.

Управление проектами

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

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

  • В меню Файл можно открыть, сохранить или закрыть проект.

  • На вкладке Проект можно добавить файлы в проект.

Просмотр трассировок WCF

WCF создает трассировки с использованием формата трассировки действий. В модели трассировки действий отдельные трассировки группируются в действиях в соответствии со своим назначением. Процесс логического контроля перенаправляется между действиями. Например, во время работы приложения появляется и исчезает множество действий "отправка сообщения". Дополнительные сведения о просмотре трассировок и действий, а также о пользовательском интерфейсе Service Trace Viewer см. в разделе Использование программы Service Trace Viewer для просмотра скоррелированных трассировок и устранения неполадок.

Переключение между различными представлениями

В программе Service Trace Viewer предусмотрены следующие различные представления. Они отображаются в виде вкладок в левой панели средства просмотра, а также доступны в меню Вид.

  • Представление действия

  • Представление проекта

  • Представление сообщения

  • Представление графика

Представление действия

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

В представлении Действие отображаются имена действий, количество трассировок в действии, продолжительность, а также время начала и завершения.

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

Можно выбрать несколько действий одновременно путем выбора нужных действий, удерживая нажатой клавишу CTRL или SHIFT. На панели трассировки отображаются все трассировки выбранных действий.

Чтобы отобразить действие в представлении График, следует дважды щелкнуть это действие. Другой способ: выберите действие и переключитесь на представление График.

ms732023.note(ru-ru,VS.100).gifПримечание
Действие "000000000000" — это специальное действие, которое нельзя отобразить в представлении графика. Поскольку все остальные действия связаны с данным действием, его отображение может привести к значительному снижению производительности.

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

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

Представление проекта

Это представление позволяет управлять файлами трассировки в текущем проекте. Дополнительные сведения см. в разделе "Управление проектом".

Представление графика

Одной из самых мощных функциональных возможностей программы Service Trace Viewer является представление График, в котором данные трассировки для заданного действия отображаются в виде диаграммы. Диаграмма позволяет просматривать последовательные этапы выполнения событий и взаимосвязи между множеством действий при перемещении данных между ними.

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

В представлении График каждый вертикальный столбец представляет действие, а каждый блок в столбце представляет трассировку. Действия группируются по процессам (или потокам). Небольшие стрелки между действиями обозначают перенаправления. Большие стрелки между процессами обозначают обмен сообщениями. Выбранное действие всегда обозначается желтым цветом.

Выбор трассировок на графике
  1. Щелкните блок на графике.

  2. Используйте клавиши СТРЕЛКА ВВЕРХ и СТРЕЛКА ВНИЗ для выбора соседних трассировок.

  3. Просматривайте данные трассировки на панели трассировки и в области сведений.

Развертывание и свертывание перенаправлений действий

Можно развернуть перенаправление действия, если выбранное действие перенаправляется на другое действие. Это позволяет отслеживать перенаправления.

Развертывание и свертывание перенаправлений действий

  1. Найдите трассировку передачи со знаком «+» слева от значка передачи.

  2. Щелкните знак "+" или нажмите сочетание клавиш CTRL и "+" на клавиатуре.

  3. На графике отображается следующее действие.

  4. Слева от значка передачи отображается знак «-». Щелкните знак "-" или нажмите сочетание клавиш CTRL и "-", чтобы свернуть перенаправление действия.

ms732023.note(ru-ru,VS.100).gifПримечание
Если развернуть одно из нескольких перенаправлений на одно действие, будут отображены действия, ведущие к новому действию из корневого действия. Эти новые действия отображаются в свернутом виде. Чтобы просмотреть сведения об этих действиях, разверните их вертикально, щелкнув значок развертывания в заголовке графика.

Вертикальное развертывание и свертывание действий

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

Вертикальное развертывание и свертывание действий

  1. Щелкните значок "+" в заголовке действия, чтобы развернуть действие вертикально.

  2. Обратите внимание, что на графике отображаются все трассировки.

  3. Щелкните значок "-" в заголовке действия, чтобы свернуть действие вертикально.

  4. Обратите внимание, что в действии отображаются только важные трассировки перенаправлений, журналов сообщений, предупреждений и исключений.

Параметры

В представлении графика можно выбрать два параметра в меню Параметры.

  • Показать трассировки границ действий. Если этот параметр отключен, трассировки границ действий на графике игнорируются.

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

Режим макета

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

Список выполнения

В этом раскрывающемся списке можно выбрать процесс или поток для отображения на графике. Например, если имеется два файла трассировки двух клиентов (А и Б) и открыта одна служба и необходимо отобразить на графике только службу и клиент А, можно отменить выбор клиента Б в списке.

Просмотр сведений трассировки

Для просмотра сведений трассировки выберите трассировку на панели трассировки. Сведения отображаются в области сведений.

Панель трассировки

Панель, расположенная в правой верхней части окна Service Trace Viewer, — это панель трассировки. В ней отображаются все трассировки, существующие в выбранном действии, с дополнительной информацией, такой как уровень трассировки, идентификатор потока и имя процесса.

Исходные XML-данные трассировки можно скопировать в буфер обмена, щелкнув правой кнопкой мыши трассировку и выбрав Копировать трассировку в буфер обмена.

Область сведений

Левая нижняя область окна Service Trace Viewer — это область сведений. Она содержит три вкладки для просмотра сведений трассировки.

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

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

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

Фильтрация трассировок WCF

Чтобы упростить анализ файлов трассировки, их можно фильтровать следующими способами.

  • Панель инструментов фильтрации предоставляет доступ к встроенным и настраиваемым фильтрам. Ее можно включить в меню Вид.

  • С помощью встроенного фильтра средства просмотра можно выборочно фильтровать части трассировок инфраструктуры WCF. По умолчанию он настроен на пропускание всех трассировок инфраструктуры. Параметры этого фильтра определяются в подменю Параметры фильтра меню Вид.

  • Настраиваемые фильтры XPath позволяют пользователям полностью контролировать процесс фильтрации. Их можно определять в подменю Настраиваемый фильтр меню Вид.

Отображаются только трассировки, которые проходят через все фильтры.

Использование панели инструментов фильтрации

Панель инструментов фильтрации отображается в верхней части средства. Если панель не отображается, ее можно активировать в меню Вид. Панель содержит три компонента.

  • Искать: поле Искать определяет, что нужно искать при фильтрации. Например, если требуется найти все трассировки, относящиеся к контексту процесса Х, в этом поле следует указать "Х", а в поле Диапазон поиска — "Имя процесса". Это поле заменяется элементом управления выбора даты и времени, если выбран фильтр времени.

  • Диапазон поиска: это поле определяет тип применяемого фильтра.

  • Уровень: определяет минимальный уровень трассировки, допускаемый фильтром. Например, при значении "Ошибка и выше" отображаются только трассировки уровня Error или Critical. Этот фильтр комбинируется с критериями, заданными в полях "Искать" и "Диапазон поиска".

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

Кнопка Очистить сбрасывает встроенные и настраиваемые фильтры, после чего они пропускают все трассировки.

Параметры фильтрации

Средство просмотра может автоматически удалять трассировки WCF из представления. Оно также может выборочно удалять из представления трассировки, относящиеся к отдельным областям WCF, например трассировки, относящиеся к транзакциям.

Параметры этого фильтра определяются в подменю Параметры фильтра меню Вид.

Настраиваемые фильтры

С помощью языка XML Path (XPath) можно создавать настраиваемые фильтры, позволяющие выполнять поиск данных трассировки для любого XML-элемента. Фильтры доступны на панели инструментов фильтрации.

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

Создание настраиваемого фильтра

Фильтры можно создавать двумя способами.

Создание настраиваемого фильтра с помощью мастера шаблонов

Можно щелкнуть существующую трассировку и создать фильтр на основе структуры этой трассировки. В этом примере создается настраиваемый фильтр на основе идентификатора потока.

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

  2. Нажмите кнопку Создать настраиваемый фильтр, расположенную в верхней части панели трассировки.

  3. В появившемся диалоговом окне введите имя фильтра. В этом примере введите Thread ID. Также можно ввести описание фильтра.

  4. В древовидном представлении слева представлена структура записи трассировки, выбранной на шаге 1. Перейдите к элементу, для которого нужно создать условие. В этом примере перейдите к атрибуту ThreadID, расположенному в узле "XPath: /E2ETraceEvent/System/Execution/@ThreadID". Дважды щелкните атрибут ThreadID в древовидном представлении. Будет создано выражение для атрибута в правой части диалогового окна.

  5. Измените значение в поле параметра условия ThreadID, указав "{0}" вместо "Нет". В результате выполнения этого действия при применении фильтра станет возможной настройка значения ThreadID. (См. раздел "Применение фильтра".) Можно определить до четырех параметров. Условия комбинируются с помощью оператора "ИЛИ".

  6. Нажмите кнопку ОК, чтобы создать фильтр.

ms732023.note(ru-ru,VS.100).gifПримечание
Если фильтр создан с помощью мастера шаблонов, его можно изменять только вручную. Невозможно запустить мастер для фильтра, который уже был создан. Кроме того, условия фильтра XPath, созданного с помощью мастера шаблонов, комбинируются с помощью оператора "ИЛИ". Если необходимо использовать оператор "И", выражение фильтра можно отредактировать после его создания.

Создание настраиваемого фильтра вручную

В меню "Настраиваемые фильтры" можно создавать фильтры XPath вручную.

  1. В меню "Вид" выберите пункт Настраиваемые фильтры.

  2. В появившемся диалоговом окне нажмите кнопку Создать.

  3. Укажите как минимум имя фильтра и выражение XPath.

  4. Нажмите кнопку ОК.

Применение настраиваемого фильтра

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

  1. Задайте искомое значение в поле Найти. В данном примере введите идентификатор потока, который требуется найти.

  2. Щелкните Применить фильтр сейчас и просмотрите результаты выполнения операции.

Если в фильтре используется несколько параметров, вводите их в поле Найти через точку с запятой ";" в качестве разделителя. Например, следующая строка определяет три параметра: "1;findValue;text". Средство просмотра применяет "1" к параметру {0} фильтра. «findValue» и «text» применяются к параметрам {1} и {2} соответственно.

Совместное использование настраиваемых фильтров

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

Импорт настраиваемого фильтра

  1. В меню Вид выберите Настраиваемые фильтры.

  2. В открывшемся диалоговом окне нажмите кнопку Импорт.

  3. Перейдите к файлу настраиваемого фильтра (STVCF), щелкните файл и нажмите кнопку Открыть.

Экспорт настраиваемого фильтра

  1. В меню "Вид" выберите Настраиваемые фильтры.

  2. В появившемся диалоговом окне выберите фильтр, который следует экспортировать.

  3. Нажмите кнопку Экспорт.

  4. Укажите имя и расположение файла определения настраиваемого фильтра (STVCF) и нажмите кнопку Сохранить.

ms732023.note(ru-ru,VS.100).gifПримечание
Эти настраиваемые фильтры можно импортировать и экспортировать только с помощью Service Trace Viewer. Выполнить их чтение другими средствами невозможно.

Поиск данных

В средстве просмотра предусмотрены следующие способы поиска данных.

  • Панель инструментов поиска предоставляет быстрый доступ к наиболее часто используемым параметрам поиска.

  • Диалоговое окно поиска предоставляет дополнительные параметры поиска. Это окно можно открыть в меню Правка или с помощью сочетания клавиш "CTRL + F".

Панель инструментов поиска отображается в верхней части средства просмотра. Если панель не отображается, ее можно активировать в меню Вид. Панель содержит два компонента.

  • Искать: позволяет ввести искомое ключевое слово.

  • Диапазон поиска: позволяет указать область поиска. Можно выбрать поиск во всех действиях или только в текущем действии.

Диалоговое окно поиска содержит два дополнительных параметра.

  • Найти объект.

    • Параметр «Необработанные данные журнала» позволяет искать ключевое слово во всех необработанных данных.

    • Параметры «Текст XML» и «XML-атрибут» позволяют осуществлять поиск только среди XML-элементов.

    • Параметр «Зарегистрированное сообщение» позволяет искать ключевое слово только в сообщениях.

  • Пропустить корневое действие: процедура поиска пропускает трассировки в действии "000000000000". Этот параметр повышает производительность при работе с большими файлами трассировки, если корневое действие содержит тысячи трассировок, большая часть которых представляет передачи.

Навигация по трассировкам

Поскольку трассировки записываются поэтапно во время работы приложения, навигация по трассировкам может помочь при отладке приложения. Программа Service Trace Viewer предоставляет различные способы навигации по трассировкам.

Шаг вперед или назад

Если представить каждую трассировку как строку кода в программе, шаг вперед похож на команду "Шаг с обходом" в интегрированной среде разработки Visual Studio. Единственное отличие заключается в том, что при работе с трассировками можно также совершать шаги назад. Шаг вперед означает переход к следующей трассировке в действии.

  • Шаг вперед: используйте меню Действие или нажмите клавишу "F10". Также можно использовать клавишу со стрелкой "вниз" в области трассировки.

  • Шаг назад: используйте меню Действие или нажмите клавишу F9. Также можно использовать клавишу со стрелкой вверх в области трассировки.

ms732023.note(ru-ru,VS.100).gifПримечание
В результате можно перейти к действию, выполняющемуся в другом процессе или даже на другом компьютере, поскольку в передаваемых сообщениях WCF могут содержаться идентификаторы действий, охватывающие несколько компьютеров.

Отслеживание перенаправлений

Трассировки перенаправления — это специальные трассировки в файле трассировки. Посредством трассировки передачи одно действие может передаваться другому действию. Например, действие А может передаваться действию Б. В таком случае в «Действии А» имеется трассировка передачи с именем «Для: действие» и значок передачи. Эта трассировка передачи является связью между двумя трассировками. В "Действии Б" также может присутствовать трассировка перенаправления при завершении действия, предназначенная для перенаправления обратно к "Действию А". Это похоже на вызовы функций в программах: А вызывает Б, затем Б возвращает значение.

"Отслеживание перенаправлений" похоже на функцию "Шаг с заходом" в отладчике. Отслеживается передача от «Действия А» к «Действию Б». Это не оказывает какого-либо воздействия на другие трассировки.

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

  • С помощью мыши: дважды щелкните трассировку передачи в области трассировки.

  • С помощью клавиатуры: выберите трассировку перенаправления, а затем выберите "Следовать за перенаправлением" в меню Действие или нажмите клавишу "F11".

ms732023.note(ru-ru,VS.100).gifПримечание
Как правило, когда действие А передается действию Б, действие А ожидает обратной передачи действия Б действию А. Это означает, что действие А не записывает трассировку, пока действие Б активно ведет трассировку. Однако "Действие А" может не находиться в состоянии ожидания, а продолжать записывать трассировки. Также возможна ситуация, когда "Действие Б" не перенаправляется обратно к "Действию А". Таким образом, перенаправления действий все же отличаются от вызовов функций. Представление графика позволяет лучше понять суть перенаправления действий.

Переход к следующему или предыдущему перенаправлению

При анализе текущего действия (или нескольких выбранных действий) может потребоваться быстро найти действия, к которым оно перенаправляется. Команда «Перейти к следующей передаче» позволяет найти следующую трассировку передачи действия. Когда трассировка передачи найдена, с помощью команды «Следовать за передачей» можно перейти к следующему действию.

  • Перейти к следующей передаче: используйте меню Действие или нажмите сочетание клавиш CTRL + F10.

  • Перейти к предыдущему перенаправлению: используйте меню Действие или нажмите сочетание клавиш "CTRL + F9".

Навигация в представлении графика

Хотя навигация в области действий и панели трассировки похожа на процесс отладки, использование представления График предоставляет гораздо более широкие возможности навигации. Дополнительные сведения см. в разделе "Представление графика".

Загрузка больших файлов трассировки

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

При открытии очень большого файла трассировки в программе Service Trace Viewer производительность системы может значительно снизиться. Скорость загрузки может быть медленной, и может увеличиться время отклика. Фактическая скорость периодически меняется в зависимости от конфигурации оборудования. На большинстве компьютеров загрузка файла трассировки размером более 200 МБ значительно снижает производительность системы. При работе с файлами трассировки размером более 1 ГБ программа может использовать всю доступную оперативную память или очень долго не отвечать на запросы.

Во избежание низкой скорости загрузки и продолжительного времени отклика при анализе крупных файлов трассировки в программе Service Trace Viewer предусмотрена функция "Частичная загрузка", которая позволяет в один момент времени загружать лишь небольшую часть трассировки. Например, имеется файл трассировки размером более 1 ГБ, работающий на сервере в течение нескольких дней. При возникновении некоторых ошибок и попытке анализа трассировки не требуется открывать файл трассировки целиком. Вместо этого можно загрузить трассировки за определенный период времени, в течение которого, скорее всего, произошла ошибка. Поскольку область данных сокращается, программа Service Trace Viewer загружает файл быстрее, и можно найти ошибку, используя небольшой объем данных.

Включение частичной загрузки

Включать частичную загрузку вручную не требуется. Если общий размер открываемых файлов трассировки превышает 40 МБ, программа Service Trace Viewer автоматически отображает диалоговое окно частичной загрузки, чтобы можно было выбрать часть, которую требуется загрузить.

ms732023.note(ru-ru,VS.100).gifПримечание
Поскольку трассировки могут быть распределены по времени неравномерно, длительность периода времени, который указывается на панели инструментов частичной загрузки, может не быть пропорциональна отображаемому размеру загружаемых данных. Фактический размер загружаемых данных может быть меньше, чем предполагаемый размер, который отображается в диалоговом окне частичной загрузки.

Настройка частичной загрузки

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

  1. Переместите панель инструментов с помощью мыши или введите время начала и завершения.

  2. Нажмите кнопку Настройка.

Значки трассировок

Ниже приводится список значков, используемых программой Service Trace Viewer в представлениях Действие и График, а также в области Трассировка для представления различных элементов.

ms732023.note(ru-ru,VS.100).gifПримечание
Некоторые трассировки, которые не распределяются по категориям (например, «сообщение закрыто»), не имеют значков.

Трассировки действий

Значок Описание
Трассировка предупреждения

Трассировка Warning: трассировка, создаваемая на пороге предупреждений

Трассировка ошибки

Трассировка Error: трассировка, создаваемая на уровне Error.

Трассировка запуска действий

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

После распространения идентификатора действия по источникам трассировки для корреляции трассировок можно увидеть несколько трассировок Start для одного идентификатора действия (один для каждого источника трассировки). Трассировка Start создается, если функция ActivityTracing включена для источника трассировки.

Трассировка остановки действий

Трассировка Stop: трассировка, обозначающая конец действия. . В ней содержится имя действия. Разработчику приложений необходимо определить одну трассировку Stop для каждого идентификатора действия для каждого источника трассировки. Ни одна трассировка из заданного источника трассировки не появляется после создания трассировки Stop источником трассировки, кроме случая, когда временное разбиение трассировки не слишком мало. В этом случае две трассировки с одним значением временного разбиения, включая Stop, могут чередоваться при отображении. После распространения идентификатора действия по источникам трассировки для корреляции трассировок можно увидеть несколько трассировок Stop для одного идентификатора действия (один для каждого источника трассировки). Трассировка Stop создается, если функция ActivityTracing включена для источника трассировки.

Трассировка приостановки действий

Трассировка Suspend: трассировка, обозначающая время приостановки действия. До возобновления приостановленного действия никакие трассировки не создаются. Приостановленное действие означает, что никакой обработки в этом действии в области источника трассировки не выполняется. Трассировки Suspend и Resume полезны для профилирования. Трассировка Suspend создается, если функция ActivityTracing включена для источника трассировки.

Трассировка возобновления действий

Трассировка Resume: обозначает время возобновления действия после приостановки. В этом действии трассировки могут создаваться повторно. Трассировки Suspend и Resume полезны для профилирования. Трассировка Resume создается, если функция ActivityTracing включена для источника трассировки.

Передача

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

Источник передачи

Transfer From: трассировка, определяющая перенаправление от другого действия к текущему действию.

Назначение передачи

Transfer To: трассировка, определяющая перенаправление процесса логического контроля от текущего действия к другому действию.

Трассировки WCF

Значок Описание
Трассировка журнала сообщений

Трассировка Message Log: трассировка, которая создается, когда сообщение WCF записывается в журнал с помощью функции ведения журнала при включении источника трассировки System.ServiceModel.MessageLogging. При щелчке трассировки отображается сообщение. Существует четыре настраиваемые точки ведения журнала для сообщения: ServiceLevelSendRequest, TransportSend, TransportReceive и ServiceLevelReceiveRequest, которые также могут быть заданы атрибутом messageSource в трассировке журнала сообщений.

Трассировка получения сообщений

Трассировка Message Received: трассировка, которая создается при получении сообщения WCF, если источник трассировки System.ServiceModel включен на уровне Information или Verbose. Она позволяет просматривать путь корреляции сообщений в представлении График действия.

Трассировка отправки сообщений

Трассировка Message Sent: трассировка, которая создается при отправке сообщения WCF, если источник трассировки System.ServiceModel включен на уровне Information или Verbose. Она позволяет просматривать путь корреляции сообщений в представлении График действия.

Действия

Значок Описание
Действие

Activity: указывает, что текущее действие является общим действием.

Корневое действие

Действие Root: обозначает корневое действие процесса.

Действия WCF

Значок Описание
Действие среды

Действие Environment: действие, создающее, открывающее или закрывающее узел или клиент WCF. Ошибки, произошедшие в ходе этих этапов, отображаются в данном действии.

Действие ожидания передачи данных

Действие Listen: действие, записывающее трассировки, которые относятся к прослушивателю. В этом действии можно просматривать информацию о прослушивателе и запросы соединения.

Действие получения данных

Действие Receive Bytes: действие, группирующее все трассировки, которые относятся к получению входящих байтов при установленном соединении между двумя конечными точками. Это действие необходимо для корреляции с действиями транспорта, распространяющими свой идентификатор действия, например http.sys. В этом действии отображаются ошибки соединения, такие как прерывание связи.

Действие обработки сообщения

Действие Process Message: действие, группирующее трассировки, которые относятся к созданию сообщения WCF. В этом действии отображаются ошибки, связанные с неправильным конвертом или неправильно сформированным сообщением. В этом действии можно просматривать заголовки сообщений, чтобы проверить выполнение распространения идентификатора действия от вызывающего. Если распространение выполнено, при перенаправлении действия Process Action (следующий значок) можно также назначить этому действию распространенный идентификатор действия для корреляции трассировок вызывающего и вызываемого.

Трассировка журнала сообщений

Действие Process Action: действие, группирующее все трассировки, которые относятся к запросу WCF между двумя конечными точками. Если в конфигурации обеих конечных точек для параметра propagateActivity задано значение true, все трассировки от этих конечных точек объединяются в одно действие для непосредственной корреляции. Такое действие будет содержать ошибки, обусловленные обработкой транспорта или безопасности, а также расширением до границы пользовательского кода и обратным сужением (если существует отклик).

Действие обработки сообщения

Действие Execute User Code: действие, группирующее трассировки пользовательского кода для обработки запроса.

Устранение неполадок

Если отсутствует разрешение записи данных в реестр, при использовании команды "svctraceviewer /register" для регистрации программы отображается следующее сообщение об ошибке: "Программа Microsoft Service Trace Viewer не зарегистрирована в системе.". В этом случае необходимо войти в систему с использованием учетной записи, у которой имеется право записи в реестр.

Кроме того, программа Service Trace Viewer записывает некоторые параметры (например, параметры настраиваемых фильтров и фильтрации) в файл SvcTraceViewer.exe.settings в папке сборки. При отсутствии разрешения на чтение файла можно по-прежнему запустить программу, но нельзя загрузить параметры.

Отображение сообщения об ошибке "Неизвестная ошибка во время обработки одной или более трассировок" при открытии ETL-файла означает, что этот файл имеет недопустимый формат.

Если открыть журнал трассировки в операционной системе на арабском языке, можно заметить, что фильтр времени не работает. Например, 2005 год соответствует 1427 году в арабском календаре. Однако диапазон времени, поддерживаемый фильтром в программе «Просмотр трассировки службы», не включает даты ранее 1752 г. В результате может оказаться невозможным выбрать правильную дату в фильтре. Чтобы устранить эту проблему можно создать настраиваемый фильтр (Вид/Настраиваемые фильтры) с использованием выражения XPath для включения конкретного диапазона времени.

См. также

Основные понятия

Использование программы Service Trace Viewer для просмотра скоррелированных трассировок и устранения неполадок
Настройка трассировки

Другие ресурсы

Activity Tracing and Propagation for End-To-End Trace Correlation