Использование данных IntelliTrace (C#, Visual Basic, C++)
Переходите к определенным точкам выполнения приложения при запуске отладки из файла журнала IntelliTrace (.iTrace). Этот файл может содержать события, исключения, потоки, шаги теста, модули и другие системные сведения, которые фиксирует IntelliTrace во время работы приложения.
Убедитесь в наличии следующих элементов.
Совпадающие файлы исходного кода и файлы символов (PDB) для кода приложения. В противном случае Visual Studio не сможет разрешить исходные расположения и выведет сообщение "Символы не найдены". См. разделы Указание символов (.pdb) и исходных файлов и Диагностика проблем после развертывания.
Visual Studio Enterprise (не Professional и не Community) на компьютере разработчика или на другом компьютере для открытия ITRACE-файлов
ITRACE-файл из одного из следующих источников:
Источник Смотрите Сеанс IntelliTrace в Visual Studio Enterprise (но не в выпусках Professional или Community) Возможности IntelliTrace Microsoft Monitoring Agent либо отдельно, либо вместе с System Center 2012 R2 Operations Manager для веб-приложений ASP.NET и приложений SharePoint, работающих в развертывании - Диагностика проблем после развертывания
- Новые возможности для System Center 2012 R2 Operations Manager
Что вы хотите сделать?
Открытие журнала IntelliTrace
Откройте ITRACE-файл на компьютере с Visual Studio Enterprise.
Двойным щелчком откройте ITRACE-файл вне Visual Studio или откройте его из Visual Studio.
- или -
Если ITRACE-файл прикреплен к рабочему элементу Team Foundation Server, выполните следующие действия в рабочем элементе.
В разделе Все ссылкинайдите ITRACE-файл. Откройте его.
- или -
В разделе Шаги для воспроизведениявыберите ссылку IntelliTrace .
Совет
Если файл IntelliTrace был закрыт во время отладки, его можно легко открыть снова. Перейдите в меню Отладка и выберите IntelliTrace, Показать сводку журнала. Можно также выбрать Показать сводку журнала в окне IntelliTrace . Эта команда доступна только при отладке с помощью IntelliTrace.
Изучение журнала IntelliTrace
Некоторые из следующих разделов в ITRACE-файле отображаются только в том случае, если данные собраны из определенного источника, например приложений SharePoint.
Раздел | Содержит | Источник сбора |
---|---|---|
Нарушения производительности | События производительности с вызовами функций, превышающими заданный порог | Microsoft Monitoring Agent (изолированный сборщик или с System Center 2012 R2 Operations Manager для веб-приложений ASP.NET, размещенных в IIS) |
Данные исключения | Исключения, включая полный стек вызова для каждого исключения | Все источники |
Анализ | Только для приложений SharePoint 2010 и SharePoint 2013. Выполнение диагностики событий IntelliTrace и SharePoint, например событий отладчика, событий ULS, необработанных исключений и других данных, записанных Microsoft Monitoring Agent. | Microsoft Monitoring Agent (изолированный сборщик или с System Center 2012 R2 Operations Manager) |
Сведения о системе | Параметры и спецификации системы размещения | Все источники |
Список потоков | Потоки, которые выполнялись во время сбора | Все источники |
Модули | Модули, которые целевой процесс загрузил в порядке их загрузки. | Все источники |
Веб-запрос | Данные веб-запросов для веб-приложений IIS в рабочей среде, а также SharePoint 2010 и SharePoint 2013 | Microsoft Monitoring Agent и изолированный сборщик |
Ниже приведены некоторые рекомендации, помогающие найти сведения в каждом разделе.
Для сортировки данных нажмите заголовок столбца.
Используйте поле поиска для фильтрации данных. Поиск в виде обычного текста работает во всех столбцах за исключением столбцов времени. Можно также фильтровать поиск по конкретным столбцам с применением одного фильтра на столбец. Введите имя столбца без пробелов, с двоеточием (:) и значением для поиска. После него введите точку с запятой (;), чтобы добавить другой столбец и искомое значение.
Например, для поиска событий производительности, которые содержат слово "медленный" в столбце Описание введите:
Description:slow
Запуск отладки из журнала IntelliTrace
Нарушения производительности
Просмотрите события производительности, записанные для приложения. Можно скрывать события, которые происходят нечасто.
Запуск отладки из события производительности
В области Нарушения производительностипросмотрите записанные события производительности, значения их полного времени выполнения и другие данные о событиях. Затем более глубоко проанализируйте методы, вызванные во время конкретного события производительности.
Можно также просто открыть событие двойным щелчком.
На странице событий проверьте время исполнения этих вызовов. Найдите медленный вызов в дереве выполнения.
Самые медленные вызовы отображаются в отдельном разделе, если имеется несколько вызовов, вложенных друг в друга или размещенных иначе.
Разверните этот вызов, чтобы просмотреть все вложенные вызовы и значения параметров, которые были записаны в тот момент времени.
(Клавиатура: чтобы отобразить или скрыть вложенный вызов, нажмите клавишу со стрелкой вправо или со стрелкой влево соответственно. Чтобы отобразить или скрыть значения параметров для вложенного вызова, нажмите клавишу ПРОБЕЛ.)
Запустите отладку из этого вызова.
Также можно двойным щелчком открыть вызов или нажать клавишу Ввод .
Если метод находится в коде приложения, Visual Studio перейдет к этому методу.
Теперь можно просмотреть другие записанные значения, стек вызова, выполнить пошаговый обход кода или использовать окно IntelliTrace для перемещения вперед или назад "по времени" между другими методами , которые вызывались в ходе этого события производительности.
Данные исключения
Просмотрите исключения, возникшие в приложении и записанные для него. Можно группировать исключения с тем же типом и стеком вызова, чтобы видеть только самое последнее исключение.
Запуск отладки из исключения
В области Данные исключенияпросмотрите записанные события исключения, их типы, сообщения и время возникновения исключений. Чтобы глубже изучить код, начните отладку из последнего события в группе исключений.
Можно также просто открыть событие двойным щелчком. Если события не сгруппированы, выберите Отладить это событие.
Если исключение возникло в коде приложения, Visual Studio переходит туда, где произошло исключение.
Теперь можно просмотреть другие записанные значения, стек вызова или использовать окно IntelliTrace для перемещения вперед или назад "по времени" между различными записанными событиями, по связанному с ними коду и значениям, записанным в эти моменты времени.
Столбец Отображает Тип Тип исключения .NET Последнее сообщение для группированных исключений или Сообщение для несгруппированных исключений Сообщение, передаваемое исключением Число для сгруппированных исключений Количество возникновений исключения Идентификатор потока для несгруппированных исключений Идентификатор потока, вызвавшего исключение Последнее время события или Время события Отметка времени, записанная при создании исключения Стек вызовов Стек вызовов для исключения.
Чтобы просмотреть стек вызовов, выберите исключение в списке. Стек вызовов отображается под списком исключений.
Анализ
Проводите диагностику проблем с приложениями SharePoint 2010 и SharePoint 2013, используя идентификатор корреляции SharePoint, или просматривайте все необработанные исключения, обнаруженные Microsoft Monitoring Agent.
Используйте идентификатор корреляции SharePoint для поиска соответствующего ему веб-запроса и событий. Выберите событие и затем запустите отладку в точке и в момент наступления события.
Если Microsoft Monitoring Agent обнаружил необработанные исключения, выберите исключение и затем запустите отладку в точке и в момент возникновения исключения.
Запуск отладки с идентификатором корреляции SharePoint
Скопируйте идентификатор корреляции SharePoint из его источника.
Например:
Откройте ITRACE-файл, затем перейдите в меню Анализ и введите идентификатор корреляции SharePoint для просмотра соответствующего веб-запроса и записанных событий.
Просмотрите события в разделе События запроса. События отображаются сверху вниз в порядке, в котором они произошли.
Выберите событие для просмотра подробных сведений о нем.
Выберите Начать отладку , чтобы начать отладку в точке, где произошло событие.
Можно просмотреть эти типы событий SharePoint вместе с событиями IntelliTrace:
События профиля пользователя
Эти события происходят при загрузке SharePoint профиля пользователя, а также при считывании или изменении свойств профиля пользователя.
События унифицированной системы ведения журнала (ULS)
Microsoft Monitoring Agent записывает подмножество событий SharePoint ULS и этих полей:
Поле IntelliTrace Поле SharePoint ULS Артикул EventID Уровень Уровень Идентификатор категории Идентификатор категории Категория Категория Область Продукт Выходные данные Сообщение Идентификатор корреляции Идентификатор корреляции
Запуск отладки из необработанного исключения
Выберите идентификатор корреляции SharePoint для исключения. Исключения группируются по типу и стеку вызовов.
(Необязательно) Разверните узел Стек вызовов , чтобы просмотреть стек вызовов для группы исключений.
Выберите Исключение отладки , чтобы начать отладку в точке и в момент возникновения исключения.
Пошаговое руководство см. в пошаговом руководстве. Отладка приложения SharePoint с помощью IntelliTrace. Типы данных, регистрируемых агентом, см. в статье Возможности IntelliTrace.
Список потоков
Изучите записанные потоки, которые работали в целевом процессе. Можно начать отладку с первого допустимого события IntelliTrace в выделенном потоке.
Запуск отладки из конкретного потока
Выберите поток в разделе Список потоков.
В нижней части раздела Список потоковвыберите Начать отладку. Можно также выбрать поток двойным щелчком.
Чтобы начать отладку из места начала приложения, двойным щелчком выберите Основной поток. См. статью Возможности IntelliTrace.
Данные потока, созданного пользователем, могут быть более полезными, чем потоки, создаваемые и управляемые сервером для размещенных в IIS веб-приложений.
Столбец | Отображает |
---|---|
Артикул | Идентификационный номер потока |
Имя | Имя потока. Потоки без имени отображаются как <No Name>. |
Время начала | Время создания потока |
Время завершения | Время завершения выполнения потока |
Запуск отладки из конкретного шага тестирования
Разверните раздел Сетка шагов теста. Выберите шаг теста.
В нижней части раздела Сетка шагов тестированиявыберите Начать отладку. Можно также двойным щелчком выбрать шаг теста.
Это запускает отладку из первого допустимого события IntelliTrace после выбранного шага теста.
Если тестовые данные существуют, IntelliTrace пытается разрешить связанную сборку Team Foundation Server, которая использовалось для выполнения тестового запуска. Если сборка найдена, связанные символы для приложения разрешаются автоматически.
Поле | Отображает |
---|---|
Сеанс тестирования | Записанные сеансы тестирования. Обычно существует только один такой сеанс. Этот список пуст, если тестовые данные были созданы с использованием произвольного тестирования вручную. |
Тестовый случай | Тестовые случаи из выбранного сеанса тестирования. Этот список пуст, если тестовые данные были созданы с использованием произвольного тестирования вручную. |
Сетка шагов теста | Шаги теста, которые были записаны с результатом тестирования "пройден" или "не пройден" |
Сведения о системе
В этом разделе приводятся сведения о системе, в которой размещено приложение, например сведения об оборудовании, операционной системе, сведения, характерные для среды и процесса.
Модули
В этом разделе перечислены модули, загруженные целевым процессом. Модули отображаются в порядке их загрузки.
Столбец | Отображает |
---|---|
Имя модуля | Имя файла модуля |
Путь к модулю | Расположение на диске, где был загружен модуль |
Идентификатор модуля | Уникальный идентификатор модуля, характерный для конкретной версии и соответствующий файлам символов (PDB). См. раздел Finding symbol (.pdb) files and source files. |
Где мне можно посмотреть более подробную информацию?
Использование автономного сборщика данных IntelliTrace
Сбор дополнительных данных диагностики в ручных тестах