Приложение SQL Server Profiler

SQL Server Profiler — это многофункциональный интерфейс для создания трассировок и управления ими, а также для анализа и воспроизведения результатов трассировки. События сохраняются в файле трассировки, который затем может быть проанализирован или использован для воспроизведения определенных последовательностей шагов для выявления возникших проблем.

Важно!

Мы объявляем о прекращении поддержки SQL Server Profiler для отслеживания и воспроизведения трассировки ядра СУБД. Эти функции будут поддерживаться в следующей версии SQL Server, но будут удалены в более поздней версии. (с какой именно версии SQL Server , пока не определено). Пространство имен Microsoft.SqlServer.Management.Trace , которое содержит объекты трассировки Microsoft SQL Server и Replay, будет также устаревшим. Обратите внимание, что SQL Server Profiler для рабочих нагрузок служб Analysis Services не является устаревшей и будет поддерживаться по-прежнему.

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

Компонент\целевая рабочая нагрузка Реляционный механизм Службы Analysis Services
Запись трассировки Графический пользовательский интерфейс расширенных событий в среде SQL Server Management Studio Приложение SQL Server Profiler
Воспроизведение трассировки Распределенное воспроизведение Профилировщик SQL Server

Преимущества приложения SQL Server Profiler

Приложение Microsoft Приложение SQL Server Profiler — это графический пользовательский интерфейс для трассировки SQL, с помощью которого можно наблюдать за экземпляром компонента Компонент Database Engine или службами Analysis Services. Приложение позволяет собирать и сохранять данные о каждом событии в файле или в таблице для последующего анализа. Например, с помощью приложения можно следить за производственной средой, чтобы определить, какие хранимые процедуры снижают производительность из-за того, что выполняются слишком медленно. Приложение SQL Server Profiler используется для таких действий, как:

  • пошаговое выполнение проблемных запросов для поиска источника проблемы;

  • выявление и диагностика медленно работающих запросов;

  • перехват серии инструкций Transact-SQL, ведущих к проблеме; Сохраненную трассировку затем можно использовать для моделирования и диагностики проблемы на тестовом сервере;

  • контроль производительности SQL Server для настройки рабочих нагрузок. Дополнительные сведения о настройке физической структуры базы данных для рабочих нагрузок см. в разделе Database Engine Tuning Advisor.

  • Анализ счетчиков производительности для диагностики проблем.

Приложение Приложение SQL Server Profiler поддерживает также аудит действий, выполняемых в экземплярах SQL Server. В ходе аудита ведется запись действий, связанных с безопасностью, для дальнейшего просмотра администратором безопасности.

Основные понятия приложения SQL Server Profiler

Для использования Приложение SQL Server Profilerнеобходимо понимать термины, описывающие работу данного средства.

Примечание

При работе с SQL Server Profiler полезно понимать трассировку SQL. Дополнительные сведения см. в статье SQL Trace.

Событие
Событие — это действие экземпляра Компонент SQL Server Database Engine. Примеры:

  • подключения пользователей, сбои, отключения;

  • инструкции Transact-SQL SELECT, INSERT, UPDATE и DELETE;

  • состояние пакетов вызова удаленных процедур (RPC);

  • запуск или завершение хранимой процедуры;

  • инструкции запуска или завершения в хранимых процедурах;

  • запуск или завершение пакета SQL;

  • запись ошибки в журнал SQL Server ;

  • получение блокировки или освобождение объекта базы данных;

  • открытый курсор;

  • проверки права доступа.

Все данные, создаваемые событием, отображаются в трассировке одной строкой. Эта строка пересекается столбцами данных, подробно описывающими данное событие.

EventClass
Класс событий — это тип трассируемого события. Класс событий содержит все данные, которые может сообщить событие. Примеры классов событий:

  • SQL:BatchCompleted

  • Аудит входа в систему

  • Аудит выхода из системы

  • Lock:Acquired

  • Lock:Released

EventCategory
Категория событий определяет способы группировки событий в Приложение SQL Server Profiler. Например, все классы событий блокировок группируются в категории событий Блокировки . Однако категории событий существуют только в Приложение SQL Server Profiler. Этот термин не отображает способ группировки событий ядра.

DataColumn
Столбец данных — это атрибут классов событий, захваченных при трассировке. Поскольку класс событий определяет тип собираемых данных, не все столбцы данных применимы ко всем классам событий. Например, при трассировке, захватывающей класс событий Lock:Acquired , столбец данных BinaryData содержит значение идентификатора блокированной страницы или строки, а столбец данных Integer Data не содержит никаких значений, поскольку он неприменим к захватываемому классу событий.

Шаблон
Шаблон определяет конфигурацию трассировки по умолчанию. А именно, он включает классы событий, которые нужно контролировать в Приложение SQL Server Profiler. Например, можно создать шаблон, указывающий используемые события, столбцы данных и фильтры. Шаблоны не выполняются, а сохраняются в файлах с расширением TDF. После сохранения шаблон управляет захватом данных, если запускается трассировка, основанная на этом шаблоне.

Трассировка
Трассировка захватывает данные на основании выбранных классов событий, столбцов данных и фильтров. Например, можно создать трассировку для контроля ошибок исключений. Для этого выберите класс событий Exception и столбцы данных Error, Stateи Severity . Необходимо собирать данные этих трех столбцов, чтобы результаты трассировки содержали значимые данные. Теперь можно запустить трассировку, настроенную таким образом, и собирать данные обо всех событиях класса Exception на данном сервере. Данные трассировки можно сохранить или немедленно проанализировать. Трассировки можно воспроизводить впоследствии, хотя некоторые события, например класса Исключение , воспроизвести нельзя. Можно также сохранить трассировку как шаблон для построения аналогичных трассировок в будущем.

В SQL Server предусмотрено два способа трассировки экземпляра SQL Server: с помощью Приложение SQL Server Profiler или системных хранимых процедур.

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

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

Задачи приложения SQL Server Profiler

Описание задачи Раздел
Позволяет получить список предопределенных шаблонов, с помощью которых приложение SQL Server выполняет мониторинг событий определенных типов, а также список разрешений, используемых для воспроизведения трассировок. Шаблоны и разрешения приложения SQL Server Profiler
Описание процесса запуска SQL Server Profiler. Разрешения, необходимые для запуска приложения SQL Server Profiler
Содержит описание процесса создания трассировки. создать трассировку (приложение SQL Server Profiler)
Содержит описание процесса указания определенных событий и столбцов данных для файла трассировки. указать столбцы событий и данных для файла трассировки (приложение SQL Server Profiler)
Содержит описание процесса сохранения результатов трассировки в файл. сохранить результаты трассировки в файл (приложение SQL Server Profiler)
Содержит описание процесса сохранения результатов трассировки в таблице. сохранять результаты трассировки в таблицу (SQL Server Profiler)
Содержит описание процесса фильтрации событий в трассировке. фильтровать события в трассировке (SQL Server Profiler)
Содержит описание процесса просмотра сведений о фильтре. просмотреть сведения о фильтре (приложение SQL Server Profiler)
Содержит описание процесса изменения фильтра. изменить фильтр (приложение SQL Server Profiler)
Содержит описание процесса установки максимального размера файла для файла трассировки (Приложение SQL Server Profiler). установить максимальный размер для файла трассировки (приложение SQL Server Profiler)
Содержит описание процесса установки максимального размера для таблицы трассировки. установить максимальный размер для таблицы трассировки (приложение SQL Server Profiler)
Содержит описание процесса запуска трассировки. Запуск трассировки
Содержит описание автоматического процесса запуска трассировки после соединения с сервером. автоматически запустить трассировку после соединения с сервером (приложение SQL Server Profiler)
Содержит описание процесса фильтрации событий по времени начала события. фильтровать события по времени начала (приложение SQL Server Profiler)
Содержит описание процесса фильтрации событий по времени окончания события. фильтровать события на основе времени окончания события (приложение SQL Server Profiler)
Содержит описание процесса фильтрации идентификаторов процесса сервера (SPID) в трассировке. отфильтровать идентификаторы процессов сервера (SPID) в трассировке (приложение SQL Server Profiler)
Содержит описание процесса приостановки трассировки. приостановить трассировки (приложение SQL Server Profiler)
Содержит описание процесса прекращения трассировки. остановить трассировку (приложение SQL Server Profiler)
Содержит описание процесса запуска трассировки после ее приостановки или прекращения. провести трассировку после ее приостановки или прекращения (приложение SQL Server Profiler)
Содержит описание процесса очистки окна трассировки. очистить окно трассировки (приложение SQL Server Profiler)
Содержит описание процесса закрытия окна трассировки. закрыть окно трассировки (приложение SQL Server Profiler)
Содержит описание процесса настройки трассировки по умолчанию. установить определения трассировки по умолчанию (приложение SQL Server Profiler)
Содержит описание процесса настройки отображения трассировки по умолчанию. установить параметры по умолчанию для отображения трассировки (приложение SQL Server Profiler)
Содержит описание процесса открытия файла трассировки. открыть файл трассировки (приложение SQL Server Profiler)
Содержит описание процесса открытия таблицы трассировки. открыть таблицу трассировки (приложение SQL Server Profiler)
Содержит описание процесса воспроизведения таблицы трассировки. воспроизвести таблицу трассировки (приложение SQL Server Profiler)
Содержит описание процесса воспроизведения файла трассировки. воспроизвести файл трассировки (приложение SQL Server Profiler)
Содержит описание процесса воспроизведения одиночного события за раз. воспроизвести одиночное событие за раз (приложение SQL Server Profiler)
Содержит описание процесса воспроизведения до точки останова. воспроизвести нагрузку до точки останова (SQL Server Profiler)
Содержит описание процесса воспроизведения до курсора. воспроизвести до курсора (приложение SQL Server Profiler)
Содержит описание процесса воспроизведения скрипта Transact-SQL. воспроизвести скрипт на языке Transact-SQL (приложение SQL Server Profiler)
Содержит описание процесса создания шаблона трассировки. создать шаблон трассировки (приложение SQL Server Profiler)
Содержит описание процесса изменения шаблона трассировки. Изменение шаблона трассировки (приложение SQL Server Profiler)
Содержит описание процесса настройки глобальных параметров трассировки. установить глобальные параметры трассировки (SQL Server Profiler)
Содержит описание процесса поиска значения или столбца данных во время трассировки. найти значение или столбец данных во время трассировки (приложение SQL Server Profiler)
Содержит описание процесса создания шаблона на основе выполняемой трассировки. создать шаблон на основе выполняемой трассировки (SQL Server Profiler)
Содержит описание процесса создания шаблона на основе файла или таблицы трассировки. создать шаблон на основе файла трассировки или таблицы трассировки (приложение SQL Server Profiler)
Содержит описание процесса создания скрипта Transact-SQL на основе выполняемой трассировки. создать скрипт Transact-SQL для выполнения трассировки (приложение SQL Server Profiler)
Содержит описание процесса экспорта шаблона трассировки. экспортировать шаблон трассировки (приложение SQL Server Profiler)
Содержит описание процесса импорта шаблона трассировки. импортировать шаблон трассировки (приложение SQL Server Profiler)
Содержит описание процесса извлечения скрипта из трассировки. извлечь скрипт из трассировки (приложение SQL Server Profiler)
Содержит описание процесса согласования трассировки с данными журнала производительности Windows. Согласовать трассировку с данными журнала производительности Windows (приложение SQL Server Profiler)
Содержит описание процесса упорядочения столбцов, отображаемых в трассировке. упорядочить столбцы, отображаемые в трассировке (приложение SQL Server Profiler)
Описание процесса запуска Приложение SQL Server Profiler. Запуск приложения SQL Server Profiler
Содержит описание процесса сохранения трассировок и шаблонов трассировок. Сохранение трассировок и шаблонов трассировок
Содержит описание процесса изменения шаблонов трассировок. Изменение шаблонов трассировки
Содержит описание процесса согласования трассировки с данными журнала производительности Windows. Сопоставление трассировки с журналом производительности Windows
Описание процесса просмотра и анализа трассировок с помощью Приложение SQL Server Profiler. Просмотр и анализ трассировок с помощью приложения SQL Server Profiler
Описание процесса анализа взаимоблокировок с помощью Приложение SQL Server Profiler. Анализ взаимоблокировок в приложении SQL Server Profiler
Содержит описание процесса анализа запросов с помощью результатов инструкции SHOWPLAN в приложении SQL Server Profiler. Анализ запросов с помощью результатов инструкции SHOWPLAN в приложении SQL Server Profiler
Описание процесса анализа взаимоблокировок с помощью Приложение SQL Server Profiler. Фильтрация трассировок с помощью приложения SQL Server Profiler
Здесь описывается использование возможностей воспроизведения Приложение SQL Server Profiler. Воспроизведение трассировок
Список зависящих от контекста тем справки для Приложение SQL Server Profiler. Справка F1 приложения SQL Server Profiler
Позволяет получить список системных хранимых процедур, используемых Приложение SQL Server Profiler для контроля производительности и активности. Хранимые процедуры приложения SQL Server Profiler (Transact-SQL)

См. также:

Категория событий Locks
Категория событий Sessions
Категория событий Stored Procedures
Категория событий TSQL
Мониторинг производительности и действий сервера