Сбор данных IntelliTrace
Предупреждение
Примечание. В Visual Studio 2010 Ultimate с пакетом обновления 1 (SP1) функция IntelliTrace больше по умолчанию не сохраняет файлы журнала IntelliTrace (ITRACE-файлы) после закрытия.Дополнительные сведения о сохранении файлов журнала IntelliTrace см. в подразделе Сохранение файлов журнала этого раздела.
Этот раздел применим только при работе с Visual Studio 2010 Ultimate.
В Visual Studio 2010 Ultimate средство IntelliTrace включено по умолчанию. Во время сеанса отладки в реальном времени IntelliTrace работает в фоновом режиме, выполняя сбор информации IntelliTrace автоматически и незаметного. Доступность этой информации позволяет перейти из сеанса отладки в реальном времени в отладку с помощью IntelliTrace, а также перейти к любому участку кода независимо от времени.
По умолчанию IntelliTrace собирает и регистрирует информацию только для выбранных событий IntelliTrace. Параметры сбора по умолчанию имеют минимальные служебные данные. Они не влияют на работу приложения или возможность использовать отладчик Visual Studio.
Сбор вызовов и параметров позволяет IntelliTrace предоставлять дополнительные возможности отладки. Однако сбор вызовов и параметров приведет к снижению производительности, использованию дополнительного места на диске и отключению функции "Изменить и продолжить" отладчика Visual Studio. Необходимо сопоставить затраты и преимущества для конкретного приложения и сценария отладки.
Параметры сбора задаются на уровне Visual Studio. Они применяются ко всем проектам и решениям Visual Basic и C#. Параметры сбора сохраняются между сеансами отладки и сеансами Visual Studio.
Содержание раздела
Сохранение файлов журнала
События IntelliTrace
Вызовы и параметры
Настройка сбора данных по модулю
Сохранение файлов журнала
По умолчанию функция IntelliTrace не сохраняет файлы журнала IntelliTrace (ITRACE-файлы) после закрытия Visual Studio. Параметры по умолчанию можно изменить, чтобы функция IntelliTrace сохраняла все файлы журнала, либо можно вручную сохранять файлы журнала IntelliTrace, как описано ниже.
Изменение параметров файлов журнала IntelliTrace по умолчанию
В меню Сервис выберите пункт Параметры.
В списке категорий параметров разверните узел IntelliTrace и щелкните Дополнительно.
Выполните одну из следующих задач:
Если требуется сохранять все файлы журнала IntelliTrace (ITRACE-файлы) выберите параметр Хранить записи IntelliTrace в этом каталоге, после чего укажите путь к папке, в которой должны сохраняться файлы.
Если ITRACE-файлы должны удаляться при закрытии Visual Studio, если только они не были сохранены вручную, снимите флажок Хранить записи IntelliTrace в этом каталоге.
Нажмите кнопку ОК, чтобы сохранить изменения.
Сохранение файла журнала IntelliTrace вручную
Нажмите кнопку Сохранить текущий сеанс IntelliTrace на панели инструментов в окне IntelliTrace.
В диалоговом окне Сохранение файла укажите имя файла, в котором требуется сохранить сеанс, и нажмите кнопку Сохранить.
События IntelliTrace
События IntelliTrace — это события, которые происходят во время выполнения приложения и сбор которых можно выполнить с помощью IntelliTrace. Ниже приведены типы событий, которые можно собрать с помощью IntelliTrace.
События отладчика. Это события, происходящие в отладчике Visual Studio во время отладки приложения. Запуск приложения — это одно событие отладчика. Другие события отладчика — это события остановки, являющиеся событиями, в результате которых приложение переходит в состояние разрыва. Обращение к точке останова, обращения к точке трассировки или выполнение команды Шаг являются примерами событий остановки.
Во избежание проблем с производительностью IntelliTrace не собирает все возможные значения для каждого события отладчика. Вместо этого IntelliTrace собирает значения, видимые пользователю. Например, если открыто окно Видимые, IntelliTrace собирает только значения, отображаемые в окне Видимые. Если окно Видимые закрыто, эти значения не собираются.
Если навести курсор на переменную в окне исходного кода, выполняется сбор значения, отображаемого в подсказке по данным. Впрочем, сбор значений не выполняется из закрепленного окна подсказок по данным.
События исключения. Эти события происходят для обработанных исключений, в точках, в которых создается и перехватывается исключение, а также для необработанных исключений. IntelliTrace выполняет сбор типа исключения и сообщения об исключении.
События платформы .NET Framework. Эти события происходят внутри библиотеки .NET. Можно просмотреть полный список событий .NET, сбор которых можно выполнить на странице События IntelliTrace диалогового окна Параметры. Для различных событий IntelliTrace собирает различные данные. Для события Доступ к файлу IntelliTrace получает имя файла, для события Установка флажка — состояние флажка и текст, и т. д.
Чтобы просмотреть список собранных событий IntelliTrace, перейдите на вкладку События IntelliTrace окна IntelliTrace. Сбор событий отладчика выполняется при каждом включении IntelliTrace. Отключить сбор этих событий невозможно.
Наиболее распространенные события платформы .NET Framework собираются по умолчанию. Можно использовать следующую процедуру для выбора других событий .NET. Кроме того, можно отключить сбор любого или всех событий .NET. Для снижения перегруженности в окне IntelliTrace, возможно, потребуется отключить сбор неинтересующих событий. Включение или отключение сбора определенных событий обычно оказывает незначительное влияние на производительность приложения.
Выбор событий IntelliTrace для записи
На панели инструментов окна IntelliTrace щелкните значок Открыть параметры IntelliTrace.
–или–
В меню Сервис выберите пункт Параметры.
В диалоговом окне Параметры выберите IntelliTrace и щелкните Общие.
Убедитесь, что установлен флажок Включить IntelliTrace.
Примечание
Если флажок Включить в IntelliTrace не установлен, все пользовательские параметры отключены.
В узле IntelliTrace выберите События IntelliTrace.
Найдите в поле События IntelliTrace требуемые категории событий.
Чтобы просмотреть отдельные события, щелкните элемент управления дерева рядом с именем категории. Например, можно развернуть Реестр для просмотра определенных событий реестра, например ClosedRegistryKey.
Чтобы включить или отключить запись всей категории событий, установите или снимите флажок рядом с именем категории.
Чтобы включить или отключить запись определенного события, установите или снимите флажок рядом с определенным именем события.
Нажмите кнопку ОК.
Если выполняется отладка, следует перезапустить сеанс отладки, чтобы изменения вступили в силу.
Вызовы и параметры
Если во время отладки с помощью IntelliTrace требуются дополнительные сведения, можно задать сбор информации о вызовах и их параметрах. Сбор информации о вызовах может повлиять на производительность приложения и увеличить размер файлов журнала.
Сбор информации о вызовах не совместим с функцией "Изменить и продолжить" отладчика Visual Studio. Если выбрать сбор информации о вызовах, функция "Изменить и продолжить" автоматически отключается и не может быть снова включена, пока включен сбор информации о вызовах.
При включении параметра Сведения о событиях и вызовах IntelliTrace средство IntelliTrace выполняет сбор записей по каждому входу и выходу вызова. При входе IntelliTrace собирает сведения об имени и значении для каждого параметра. Для массивов записываются только первые 256 объектов. Для объектов записывается только верхний уровень структуры. На выходе IntelliTrace собирает возвращаемое значение метода.
Включение сбора сведений о вызовах
В диалоговом окне Параметры откройте узел IntelliTrace и щелкните Общие.
На странице Общие щелкните Сведения о событиях и вызовах IntelliTrace.
Нажмите кнопку ОК.
Настройка сбора данных по модулю
Сбор данных IntelliTrace можно включить или выключить для определенных модулей. Эта возможность полезна, поскольку некоторые модули могут не представлять интереса для отладки. Например, выполняется отладка решения, содержащего хорошо протестированные и тщательно отлаженные проекты DLL прежних версий. Исключение не интересующих модулей помогает снизить загруженность в окне IntelliTrace и сосредоточиться на требуемом коде. Кроме того, это повышает производительность и снижает объем места на диске, используемого файлом журнала. Разница может быть значительная при выборе сбора сведений о вызовах и параметрах.
Сбор данных из выбранных модулей
В диалоговом окне Параметры откройте узел IntelliTrace и щелкните Модули.
Выберите Сбор данных изо всех модулей за исключением следующего или Сбор данных только из следующих модулей.
Под этим параметров находится список имен модулей.
Чтобы удалить модуль из списка, выберите имя модуля и нажмите кнопку Удалить.
Чтобы добавить модуль в список, выполните следующие действия.
Нажмите кнопку Добавить.
Откроется диалоговое окно Добавить шаблон.
В поле Введите шаблон строки для поиска введите имя модуля, который требуется добавить в список. Описатели подстановочных знаков в начале или конце строки можно использовать для добавления нескольких модулей.
Нажмите кнопку Добавить.
Имена модулей должны быть именами файлов, а не именами сборок. Пути к файлам не принимаются.
Нажмите кнопку ОК.
Примечание
Если для коллекции задан параметр Только события на странице Общие, параметры модулей ни на что не влияют.