Телевизоры. Приставки. Проекторы и аксессуары. Технологии. Цифровое ТВ

Анализ запросов с помощью SQL Profiler. Использование SQL Profiler (профилировщика)

В этой лекции мы продолжим изучение хранимых процедур, которое начали в "Создание хранимых процедур и управление этими процедурами" . Вы узнаете, как анализировать хранимые процедуры и другие операторы T- SQL с помощью анализатора запросов Microsoft SQL Server Query Analyzer и профайлера SQL Server Profiler. Из этого анализа вы сможете определять, насколько эффективны операторы T- SQL . Эффективный запрос SQL Server использует подходящую последовательность операций и подходящие индексы для снижения количества обрабатываемых строк и минимизации количества операций ввода-вывода.

Используя Query Analyzer , вы можете видеть план исполнения , выбранный для оператора T- SQL оптимизатором запросов SQL Server . Оптимизатор запросов – это внутренний модуль , который ищет наилучший план исполнения для каждого оператора T- SQL . Оптимизатор запросов анализирует каждый оператор T- SQL , просматривает ряд возможных планов исполнения и выполняет оценку "стоимости" каждого плана с точки зрения требуемых ресурсов и времени обработки. Выбирается план с наименьшей стоимостью. Стоимость каждого плана определяется на основе имеющейся статистики, которая собрана системой и может оказаться устаревшей. Поскольку вы можете знать больше о вашей базе данных и ваших данных, чем оптимизатор запросов , то, возможно, вам удастся создать план, который окажется лучше, чем у оптимизатора запросов. Используя информацию, которую выдает Query Analyzer , вы можете определить, будет ли эффективным план оптимизатора запросов для определенного оператора, и если нет, то вы можете попытаться оптимизировать данный оператор, модифицируя его или используя подсказку SQL . В этой лекции вы узнаете, как оптимизировать операторы T- SQL , что будет дополнением к изучению использования Query Analyzer .

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

Использование SQL Query Аnalyzer

Утилита Query Analyzer поставляется вместе с Microsoft SQL Server 2000 взамен

Одним из моих самых любимых инструментов является SQL Server Profiler, который часто называют просто Profiler. Эта утилита отображает данные о любом количестве детализированных событий SQL Server. Эти события сервера можно просматривать в окне Trace Properties (рис. 49.3), а также записывать в файл или таблицу для последующего анализа. Для регистрации всех событий или их избранного подмножества можно установить фильтры.

Puc. 49.2. В данном примере протокол счетчиков будет регистрировать информацию

о производительности SQL Server в каталоге С: \ Perf Logs

Утилиту SQL Server Profiler можно запустить из меню Tools программы Management Studio или непосредственно из папки SQL Server 2005 системного меню Пуск. Для просмотра действий вам необходимо либо определить новую трассировку, либо воспользоваться уже существующим файлом.

С выходом пакета обновлений SP1 SQL Server Profiler получил возможность Внимание! выполнять трассировку крупных массивов данных на больших компьютерах.

Кроме того, ранее при мониторинге службы анализа время отображалось в единицах универсального синхронизированного времени (UTC). Теперь используется локальное системное время. Ранее успешно воспроизведенные события подсчитывались некорректно, в результате пользователь получал некорректную статистику. Эта проблема была устранена.

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

Когда создается новая трассировка (либо с помощью команды меню File^New Trace, либо с помощью кнопки New Trace панели инструментов), создается также новое подключение к SQL Server и открывается диалоговое окно Trace Properties (рис. 49.4). Во вкладке General этого окна настраивается трассировка (в частности, имя, местоположение файла и т.п.), а во вкладке Events Selection определяются регистрируемые события, данные и фильтры. Если трассировка запущена, то эти параметры можно просматривать, но не изменять. Конфигурация трассировки может быть сохранена в виде шаблона, чтобы облегчить создание новых трассировок в будущем.

Рис. 49.4. Вкладка Events Selection окна Trace Properties позволяет отобрать события, отслеживаемые утилитой Profiler

Трассировку можно просматривать в реальном времени, однако эти данные могут одновременно записываться в файл или таблицу SQL Server. Это полезно для последующего интеллектуального анализа, сравнения с данными счетчиков монитора системы или для импорта в утилиту Database Engine Tuning Advisor.

Когда показания записываются в файл, для повышения производительности они объединяются в цепочки по 128 Кбайт; аналогично, при записи в таблицу данные группируются по несколько строк.

Чтобы сохранить данные, полученные программой Profiler, для последующего анализа, используйте высокопроизводительный файловый метод, а также серверную трассировку (о ней мы поговорим позже). Если вы хотите анализировать данные с помощью инструкций Т-SQL, используйте точно такой же подход, но после завершения сеанса трассировки откройте полученный файл в утилите Profiler и выберите в меню команду File^Save As^Table.

Отбор событий

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

I Событие SQL Batch Completed основано на выполнении пакетов Т-SQL в

SVS целом (разделенных терминаторами пакетов), а не отдельных их инструкций.

| * Исходя из этого, Profiler регистрирует данные всего об одном событии, незави-

Симо от длины пакета. Для регистрации выполнения отдельных инструкций

DML используйте событие SQL Statement Complete.

Для воспроизведения трассировки можно использовать далеко не все события. Например, событие SQL Batch Start может быть воспроизведено, а событие SQL Batch Complete - нет.

В зависимости от событий для трассировки становятся доступными разные данные. Несмотря на то что столбец данных SPID кажется необязательным, это впечатление обманчиво - он обязателен.

Фильтрация событий

Программа Profiler способна собрать для вас такое количество информации, которая легко может в мгновение ока заполнить дисковое устройство. К счастью, предлагаемый программой фильтр (рис. 49.5) поможет вам ограничить этот массив только интересующими вас данными.

Рис. 49.6. Утилита SQL Server Profiler способна интегрировать данные монитора производительности и синхронизировать их с отслеженными событиями

Использование SQL Trace

Программу SQL Profiler обычно используют интерактивно, и для непостоянного сбора данных ее вполне достаточно. Однако длительные трассировки способны с легкостью накопить сотни тысяч записей, что может вызвать вполне конкретные проблемы на рабочей станции, выполняющей трассировку. Решение сводится к созданию журнала трассировки непосредственно на сервере. Такая трассировка вызовет небольшую дополнительную нагрузку на сервер; при этом файлы будут записываться блоками по 128 Кбайт.

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

о производительности при минимизации дополнительной нагрузки на сервер.

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

Когда трассировка сконфигурирована и протестирована в SQL Server Profiler, выберите в меню команду File^Export^Trace Definition^For SQL Server 2005, чтобы сгенерировать сценарий T-SQL, способный выполнять трассировку на стороне сервера.

I Чтобы узнать, какие трассировки запущены на сервере, выполните запрос к ди-

SVS намическому представлению управления systraces. Когда вы посмотрите на I * результаты этого запроса, то увидите дополнительную трассировку. Первый * номер всегда имеет так называемая трассировка по умолчанию, которая собирает данные для журналов SQL Server, - ее невозможно остановить.

Для остановки серверной трассировки используйте системную хранимую процедуру sp_trace_setstatus. Первый ее аргумент (traceid) является идентификатором трассировки, а второй определяет характер действия. Нулевое значение параметра действия приводит к остановке трассировки, единица - к ее запуску, а двойка - к закрытию и удалению. В следующем коде останавливается трассировка с номером 2.

В дополнение к использованию Query Analyzer для поиска неэффективных операторов T-SQL вы можете также использовать утилиту SQL Server Profiler . Profiler позволяет наблюдать за всеми операторами T-SQL, которые выполняются в системе, с графическим отображением информации об этих операторах. Profiler также предоставляет возможности сортировки и фильтрации, которые можно использовать для выявления операторов T-SQL, использующих основную часть ресурсов ЦП и ввода-вывода. Обладая этой информацией, вы можете определять, каким операторам T-SQL уделить основное внимание для их настройки. Операторы T-SQL, которые вызываются из приложения, можно просматривать в Profiler; при этом вам не требуется доступ исходному коду самого приложения.

Утилита Profiler в SQL Server 2000 действует аналогично утилите Profiler в SQL Server 7, но она содержит некоторые улучшения. Одним из полезных дополнений является шаблон трассировки (trace template), который можно использовать для создания файлов трассировки. (Трассировку нужно по-прежнему создавать до того, как вы сможете использовать ее для мониторинга операций SQL Server.) В SQL Server трассировки должны были создаваться вручную.

Для вызова утилиты Profiler и запуска трассировки выполните следующие шаги.

  1. Щелкните на кнопке Start, укажите пункт Programs, укажите Microsoft SQL Server и затем выберите Profiler. При первоначальном открытии окна Profiler оно будет пустым. Не будет открыто ни одной панели, и не будет выполняться никакого профилирования в SQL Server.
  2. Чтобы начать создание профилирование, вы должны выбрать для выполнения существующий шаблон трассировки или создать новый шаблон трассировки для выполнения. (Процесс запуска описан на шаге 4.) SQL Server 2000 Profiler предоставляет для выбора целый ряд шаблонов трассировки. Использование этих шаблонов трассировки может сэкономить вам много времен, поскольку вам не нужно создавать трассировку с самого начала. Чтобы увидеть список шаблонов трассировки, щелкните на меню File (Файл), укажите команду Open (Открыть) и выберите пункт Trace Templates (Шаблоны трассировки), чтобы появилось диалоговое окно Open (рис. 35.16).


    Рис. 35.16.

    Имеются следующие шаблоны трассировки, поставляемые вместе с SQL Server.
    • SQLServerProfilerSP_Counts.tdf . Подсчитывает количество запущенных хранимых процедур. Результаты группируются по именам хранимых процедур и содержат количество запусков соответствующей процедуры.
    • SQLServerProfilerStandard.tdf . Собирает общую информацию о соединениях, выполненных хранимых процедурах и пакетах SQL в порядке их выполнения.
    • SQLServerProfilerTSQL.tdf . Собирает информацию обо всех операторах T-SQL в порядке их поступления в SQL Server от пользователей. Эта трассировка содержит просто операторы T-SQL и моменты времени их запуска.
    • SQLServerProfilerTSQL_Duration.tdf . Выводит запущенные операторы T-SQL, а также время (в миллисекундах), которое потребовалось для выполнения этих операторов.
    • SQLServerProfilerTSQL_Grouped.tdf . Собирает данные, аналогичные тому, что собирает SQLServerProfilerTSQL, но группирует операторы по пользователям, запустившим эти операторы.
    • SQLServerProfilerTSQL_Replay.tdf . Предоставляет подробную информацию о запускавшихся операторах T-SQL. Эта трассировка содержит данные, которые можно использовать для воспроизведения операторов T-SQL в Query Analyzer.
    • SQLServerProfilerTSQL_SPs.tdf . Выводит указанные хранимые процедуры, а также команды T-SQL внутри этих процедур. Результаты выводятся в порядке выполнения.
    • SQLServerProfilerTuning.tdf . Собирает данные о хранимой процедуре и выполнении пакета SQL.
    Эти шаблоны трассировки могут оказаться очень полезными. Например, шаблон трассировки SQLServerProfilerTSQL_Duration может помочь вам в определении операторов T-SQL, на выполнение которых требуется больше всего времени. Эта информация может послужить отправной точкой для оптимизации запроса . Оператор может занимать много времени, потому что он выполняет много работы или, может быть, потому, что он действует неэффективно. Как вы увидите на следующем шаге, для любой трассировки у вас должен использоваться заранее определенный шаблон.
  3. Для запуска трассировки щелкните на File, укажите команду New (Создать) и затем выберите пункт Trace (Трассировка). Появится диалоговое окно Connect to SQL Server (рис. 35.17). В этом диалоговом окне выберите систему SQL Server для трассировки и затем щелкните на кнопке OK.


    Рис. 35.17.
  4. Появится окно Trace Properties (Свойства трассировки) (рис. 35.18). Во вкладке General (Общие) вы можете ввести имя трассировки (поле Trace name) и выбрать шаблон трассировки (trace template), чтобы использовать его как отправную точку. Для данного примера выберите шаблон SQLServerProfilerTSQLDuration. В нижней части вкладки вы можете указать, где хотите сохранять трассировку – в файле (Save in file) и/или в таблице SQL Server (Save in table). Если не установлен ни один из этих флажков, то результаты трассировки будут выводиться только на экран. Кроме того, вы можете задать время окончания трассировки (флажок и поле Enable trace stop time). Это может оказаться очень полезным для долговременных трассировок.


    Рис. 35.18.
  5. Далее щелкните на вкладке Events (События) (рис. 35.19).


    Рис. 35.19. В этой вкладке вы можете выбрать одно или несколько событий, которые будут отслеживаться в данной трассировке. Можно отслеживать целый ряд классов (категорий) событий и конкретных событий. В окне списка Available event classes (Имеющиеся классы событий) содержатся такие классы событий, как Cursors (Курсоры), Errors and Warnings (Ошибки и предупреждения), Locks (Блокировки), Objects (Объекты), Scans (Сканирования), SQL Operators (Операторы SQL), Stored Procedures (Хранимые процедуры), Transactions (Транзакции) и TSQL.
  6. После выбора событий, трассировку которых вы хотите выполнять, щелкните на вкладке Data Columns (Колонки данных) (рис. 35.20). В этой вкладке укажите, сбор каких данных будет выполняться во время данной трассировки. В эти данные можно включать время окончания,

В своей работе мы довольно часто мы сталкиваемся с ситуацией, когда определенный запрос работает медленно, причем по тексту запроса невидно никаких очевидных проблем. Обычно в этом случае необходимо расследовать проблему на более глубоком уровне. Как правило, возникает необходимость посмотреть текст SQL запроса и его план, и вот в этом нам как раз помогает SQL Profiler.

Что такое SQL Profiler и зачем оно вообще нужно.

SQL Profiler — это программа поставляемая вместе с MS SQL Server и предназначена она для и просмотра всех событий, которые происходят в SQL сервер или говоря другими словами для записи трассировки.

Зачем SQL Profilerможет понадобиться программисту 1С?

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

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

Так же с помощью профайлера можно определить:

запросы длиннее определенного времени

запросы к определенной таблице

ожидания на блокировках

таймауты

взаимоблокировки

и многое другое…

Анализ запросов с помощью SQL Profiler

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

Что бы отловить запрос в трассировке делаем следующее:

1. Запускаем SQL Profiler

Пуск — Все программы — Microsoft SQL Server 2008 R2 — Средства обеспечения производительности — SQL Profiler

2. Создаем новую трассировку

Файл – Создать трассировку (Ctrl+N)
3. Указываем сервер СУБД на котором находится наша база данных и нажимаем «Соединить».

Естественно, ничего не мешает выполнять трассировку сервера СУБД, который находится на другом компьютере.

4. В появившемся окне «Свойства трассировки» переходим на вторую закладку «Выбор событий»

5. Теперь необходимо указать события и свойства этих событий, которые мы хотим видеть в трассировке.

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

Описание событий:

ShowplanStatisticsProfile– текстовый план выполнения запроса

ShowplanXMLStatisticsProfile– графический план выполнения запроса

RPC:Completed– текст запроса, если он выполняется как процедура (если выполняется запрос 1С с параметрами).

SQL:BatchCompleted– текст запроса, если он выполняется как обычный запрос (если выполнялся запрос 1С без параметров).

6. Теперь необходимо настроить фильтр для событий. Если этого не сделать, то мы будем видеть запросы для всех баз данных расположенных на данном сервере СУБД.

Нажимаем кнопку «Фильтры столбцов» и указываем фильтр по имени базы данных

Теперь мы будем видеть в трассировке только запросы к базе данных «TestBase_8_2»

При желании можно поставить фильтр и по другим полям, наиболее интересные из них: Duration(Длительность), TextData(обычно это текст запроса) и RowCounts (количество строк возвращаемых запросом).

Например, если мне нужно отловить все запросы к таблице «_InfoRg4312» длительностью более 3-х секунд в базе данных «TestBase_8_2», то я делаю:

a) Фильтр по базе данных, пример показан выше

b) Фильтр по длительности в миллисекундах.

c) Фильтр по тексту запроса

Здесь мы указываем маску. Если необходимо отслеживать запросы, которые обращаются к нескольким таблицам, то создаем несколько элементов в разделе «Похоже на». Условия всех фильтров работают вместе.

7. Теперь можно запускать трассировку. Нажимаем «Запустить», после этого трассировка начинает работу, и вы можете видеть те события, отображение которых вы настроили и которые попадают под ваши фильтры.

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

Слева на право:

Ластик – очищает окно трассировки

Пуск – запускает трассировку

Пауза – ставит трассировку на паузу, при нажатии на Пуск трассировка возобновляется

Стоп – останавливает трассировку

8. Само окно трассировки состоит из двух частей. В верхней части располагаются события и свойства событий.

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

9. Выполним запрос в консоли запросов 1С и посмотрим как он отразится в профайлере.

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

10. По свойствам событий можно понять: сколько секунд выполнялся запрос (Duration), сколько было логических чтений (Reads), сколько строк запрос вернул в результате (RowCounts) и т.д.

В моем случае запрос выполнялся 2 миллисекунды, сделал 4 логических чтения и вернул 1 строку.

11. Если подняться на одно событие выше, то мы сможем увидеть план запроса в графическом виде.

Как видно из плана, поиск осуществляется по индексу по цене, хотя этот план нельзя назвать идеальным, т.к. индекс не является покрывающим, поля код и наименование получаются с помощью KeyLookup, что отнимает 50% времени.

Используя контекстное меню, графический план можно сохранить в отдельный файл с расширением *.SQLPlan и открыть его в профайлере на другом компьютере или с помощью более продвинутой программы SQL Sentry Plan Explorer.

12. Если подняться еще выше, то мы увидим тот же план запроса, но уже в текстовом виде.

Именно этот план отображается в ТЖ, ЦУП и прочих средствах контроля производительности 1С. Для его анализа рекомендую использовать продвинутый текстовый редактор с подсветкой, например Notepad++.

a) В формат самого профайлера, т.е. с расширением *.trc

b) В формат xml

c) Можно сделать из трассировки шаблон. См. следующий пункт.

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

При этом нужно учитывать, что Durationсохраняется в таблицу в миллионных долях секунды и при выводе результата, желательно переводить значение в миллисекунды. Так же в таблицу добавляется столбец RowNumber, который показывает номер данной строки в трассировке.

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

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

Для создания шаблона используем меню Файл – Шаблоны – Новый шаблон

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

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

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

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

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

SQL Profiler - программное средство, используемое для трассировки сервера SQL Server. "Трассировка" - сеанс сбора информации о работе SQL Server 2008

Основное назначение:

SQL Profiler используется администраторами для:

· анализа работы приложения;

· определения оптимальности запросов, направляемых на сервер;

· выявления команд Transact-SQL, при выполнении которых возникает ошибка;

· сбора информации о пользовательской активности в течение продолжительного промежутка времени;

· проведения мониторинга работы сервера в режиме реального времени.

Новые возможности:

a. профилировка Analysis Services;

b. профилировка событий Integration Services;

c. возможность при записи информации выполнения команды записывать показания счетчиков из Performance Monitor;

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

f. возможность группировать события в окне профилировщика.

Работа с SQL Server Profiler

1. Запустить SQL Server Profiler - из меню Пускà Программыà SQL Server 2008à Performance Toolsà SQL Server Profiler .

2. В открывшемся окне в меню File выбрать New Trace и подключиться к серверу SQL Server 2008, работу которого мы будем отслеживать.

3. Настроить параметры сеанса в окне Trace Properties , которое открывается автоматически переда началом сеанса трассировки (см. рис. 8.1).

Рис. 8.1. Настройка параметров сеанса трассировки

a. На вкладке General выбрать в списке Use the template наиболее подходящий шаблон. Выбор шаблона производится при помощи меню File à Templates в SQL Server Profiler. Изначально в вашем распоряжении - восемь шаблонов:

1). Standard (default) - шаблон по умолчанию, позволяющий отслеживать все запускаемые на выполнение хранимые процедуры и команды Transact-SQL;

2). SP_Counts - сбор информации о запускаемых на выполнение хранимых процедурах и функциях с сортировкой по именам;

3). TSQL - сбор информации о всех командах Transact-SQL, запускаемых на выполнение на сервере, с указанием идентификатора пользовательских процессов и времени запуска;

4). TSQL_Duration - аналогичен предыдущему шаблону, но вместо информации о времени запуска команды TSQL записывается время, которое потребовалось на ее выполнение;

5). TSQL_Grouped - помимо информации о коде команды Transact-SQL и времени ее запуска, записывается также информация о имени приложения, учетной записи пользователя в ОС и учетной записи пользователя, которая была использована для подключения;



6). TSQL_Replay - запись максимально подробной информации о выполняемых командах Transact-SQL;

7). TSQL_SPs - помимо записи информации о начале запуска хранимой процедуры (SP:Starting) регистрируется информация о выполнении каждой из команд хранимой процедуры (SP:StmtStarting);

8). Tuning - используется для сбора информации необходимой Database Tuning Advisor.

b. На вкладке General если необходимо указать место сохраннения трассировочной информации:

1). Информация трассировки может быть запротоколирована в файл (по умолчанию размером 5 Мбайт):

· параметр Enable File Rollover определяет, будет ли при заполнении одного файла автоматически создаваться следующий. Имя следующего файла будет таким же, как и имя предыдущего, но к его имени будет добавлен номер (1, 2, 3 и т.п.)

· параметр Server processes trace data можно использовать для увеличения надежности записи информации трассировки. После установки этого флажка обработкой информации трассировки будет заниматься сервер.

2). Информация трассировки может быть сохранена в таблице SQL Server. Таблица с нужным набором столбцов будет создана автоматически.

3). С помощью параметра Enable Trace Stop Time можно указать время, когда трассировка будет отключена автоматически.

c. На вкладке Events Selection определить параметры сбора информации. В таблице на этой вкладке вы должны выбрать требуемые события (в строках) и информацию (в столбцах), которая будет для них записываться. Для отображения всех строк и столбцов, нужно установить флажки Show All Events и Show All Columns .

1). с помощью кнопки Column Filters (Фильтры столбцов) настроить фильтры на сбор необходимой информации (отслеживать действия, выполняемые в определенной БД, или определенным приложением, или определенным пользователем) – Like или Not Like ;

2). при помощи кнопки Organize Columns (Организовать столбцы) настроить порядок столбцов для отображения или записи в профилировщике с возможностью группировки данных - раздел Group.

4. После задания всех параметров трассировки нажать на кнопку Run (Запустить) (см. рис. 8.2)

Рис. 8.2. Просмотр информации в ходе сеанса трассировки

В верхней части окна отображаются события, происходящие на сервере, а в нижней части - приводится подробная информация по каждому событию (например, код команд SQL).

Возможности, доступные в окне трассировки:

1. Если на вкладке Organize Columns в свойствах шаблона вы выбрали столбцы для группировки, вы можете сгруппировать по этим столбцам записи в окне просмотра. Для этой цели в меню View предусмотрена команда Grouped View ;

2. Если в список Group был помещен только один столбец, то у вас появляется возможность использовать режим отображения Aggregated View (см. рис. 8.3). Этот режим включается при помощи команды Aggregated View из того же меню View .

Рис. 8.3. Режим отображения Aggregated View

3. Иы можете открывать в профилировщике события, сохраненные в файлах и таблицах трассировки. Также существует возможность повторять запротоколированные операции, с помощью меню Replay ;

4. Вы можете связывать информацию трассировки с показателями счетчиков производительности System Monitor. Для этого:

· определить сеанс трассировки, в ходе которого обязательно должна записываться информация для столбцов StartTime и EndTime ;

· запустить сеанс трассировки с записью информации в файл или таблицу. Одновременно с ним собрать в файл протокол показаний счетчиков Performance Monitor ;

· открыть собранную информацию из файла трассировки в профилировщике, а затем воспользоваться командой Import Performance Data из меню File .



Похожие публикации