Расширенный просмотр целевых данных из расширенных событий в SQL ServerAdvanced Viewing of Target Data from Extended Events in SQL Server

Применимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаБаза данных SQL AzureAzure SQL DatabaseYesБаза данных SQL AzureAzure SQL DatabaseПрименимо к:Applies to: даSQL ServerSQL Server (все поддерживаемые версии) yesSQL ServerSQL Server (all supported versions) ДаБаза данных SQL AzureAzure SQL DatabaseYesБаза данных SQL AzureAzure SQL Database

В этой статье содержатся сведения об использовании дополнительных возможностей среды SQL Server Management Studio (SSMS.exe) для подробного просмотра целевых данных из расширенных событий.This article illustrates how you can use the advanced features of SQL Server Management Studio (SSMS.exe) to view the target data from extended events in rich detail. Здесь описывается выполнение следующих задач:The article explains how to:

  • открытие и просмотр целевых данных различными способами;Open and view the target data, in various ways.
  • экспорт целевых данных в различные форматы с помощью специальных меню или панели инструментов для расширенных событий;Export the target data to various formats, by using the special menu or toolbar for extended events.
  • управление данными во время просмотра или перед экспортом.Manipulate the data while viewing, or before exporting.

Предварительные требованияPrerequisites

В данной статье предполагается, что вы уже знаете, как создать и запустить сеанс событий.The present article assumes you already know how to create and start an event session. Инструкции по созданию сеанса событий приводятся в следующей статье:Instructions on how to create an event session are demonstrated early in the following article:

Быстрое начало. Расширенные события в SQL ServerQuick Start: Extended Events in SQL Server

В этой статье также предполагается, что вы установили последний ежемесячный выпуск SSMS.This article also assumes you have installed a very recent monthly release of SSMS. Справочные сведения приведены в следующих статьях:Installation help is at:

Отличия от базы данных SQL AzureDifferences with Azure SQL Database

Реализация и возможности расширенных событий в Microsoft SQL Server и базы данных SQL Azure во многом аналогичны.There is a high degree of parity in the implementation and capabilities of extended events in the two products Microsoft SQL Server and Azure SQL Database. Однако существуют некоторые различия, которые влияют на пользовательский интерфейс среды SSMS.But there are some differences that affect the SSMS UI (user interface).

  • Для базы данных SQL целевой объект package0.event_file не может быть файлом на локальном диске.For SQL Database, the package0.event_file target cannot be a file on the local disk drive. Вместо него необходимо использовать контейнер хранилища Azure.Instead, an Azure Storage container must be used. Поэтому при подключении к базе данных SQL в пользовательском интерфейсе SSMS выводится запрос о контейнере хранилища, а не локальном пути и имени файла.Therefore when you are connected to SQL Database, the SSMS UI asks for a storage container, instead of a local path and file name.

  • В пользовательском интерфейсе SSMS флажок Просмотр данных, передаваемых в режиме реального времени отображается серым цветом и отключен, так как эта функция недоступна для базы данных SQL.In the SSMS UI when you see the check box Watch live data is grayed and disabled, it is because that feature is not available for SQL Database.

  • Вместе с SQL Server устанавливается несколько расширенных событий.A few extended events are installed with SQL Server. В узле Сеансы отображается событие AlwaysOn_health и несколько других.Under the Sessions node we can see AlwaysOn_health plus a couple others. Они не видны при подключении к базе данных SQL, так как не существуют для нее.These are not visible when connected to SQL Database because they do not exist for SQL Database.

Эта статья применяется к SQL Server.The present article is written from the perspective of SQL Server. Здесь используется цель event_file, являющаяся одной из различий.The article uses the event_file target, which is one area of differences. Дальнейшие упоминания отличий связаны с важными или неочевидными различиями.Further mentions of any differences are limited to important or non-obvious differences.

Сведения о расширенных событиях, относящихся к базе данных SQL Azure, см. в статье:For documentation about extended events that is specific to Azure SQL Database, see:

A.A. Общие параметрыGeneral options

Как правило, доступ к дополнительным параметрам осуществляется указанными далее способами.Generally the advanced options are accessed by the following means:

  • Обычное меню — Файл > Открыть > Файл .The regular menu of File > Open > File .
  • Щелчки правой кнопкой мыши в обозревателе объектов и последующий выбор пунктов Управление > Расширенные события .Right-clicks in the Object Explorer under Management > Extended Events .
  • Специальное меню Расширенные события и специальная панель инструментов для расширенных событий.The special menu Extended Events , and the special toolbar for extended events.
  • Щелчки правой кнопкой мыши в области с вкладками, где отображаются целевые данные.Right-clicks in the tabbed pane that displays the target data.

Б.B. Перенос целевых данных в SSMS для отображенияBring target data into SSMS for display

Существуют разные способы переноса целевых данных event_file в пользовательский интерфейс SSMS.There are various ways to bring event_file target data into the SSMS UI. При указании event_file задаются его имя и путь к файлу:When you specify an event_file target, you set its file path and name:

  • XEL — это расширение имени файла..XEL is the extension of the file name.

  • Каждый раз при запуске сеанса событий система внедряет большое целое число в новое имя файла, чтобы сделать имя файла уникальным и отличным от имени в предыдущий момент запуска сеанса.Each time the event session is started, the system embeds a large integer into a new file name, to make the file name unique and different from the preceding occasion the session was started.

    • Пример . Checkpoint_Begins_ES_0_131103935140400000.xelExample: Checkpoint_Begins_ES_0_131103935140400000.xel
  • Содержимое внутри XEL не является обычным текстом, который можно просмотреть с помощью Notepad.exe.The contents inside a .XEL are not plain text that can be viewed with Notepad.exe.

    • Если необходимо, для объединения нескольких XEL-файлов можно последовательно выбрать Файл > Открыть > Объединить файлы расширенных событий .If you want, the way to append several .XEL files together is to use the menu File > Open > Merge Extended Event Files .

SSMS может отображать данные из любого целевого объекта.SSMS can display data from any target. Однако для разных целевых объектов отображаются данные разного вида.But the displays are different for the various targets:

  • event_file: данные из целевого объекта event_file отображаются очень хорошо и с доступными расширенными возможностями.event_file: Data from an event_file target is displayed very well, with rich features available.

  • ring_buffer: данные из целевого объекта кольцевого буфера отображаются в виде необработанного кода XML.ring_buffer: Data from a ring-buffer target is displayed as raw XML.

  • Уровень отображения данных других целевых объектов находится где-то между уровнем отображения event_file и ring_buffer.For other targets the power of the display is somewhere between that of event_file versus ring_buffer.

    • В число других таких целей входят event_counter, histogram и pair_matching.Such other targets include event_counter, histogram, and pair_matching.
  • etw_classic_sync_target: в SSMS не могут отображаться данные из целевого типа etw_classic_sync_target.etw_classic_sync_target: SSMS cannot display data from the target type etw_classic_sync_target.

Б.1. Открытие XEL-файла путем выбора "Файл" > "Открыть" > "Файл"B.1 Open .XEL with menu File > Open > File

XEL-файл можно открыть с помощью стандартного меню Файл > Открыть > Файл .You can open an individual .XEL file with the standard menu File > Open > File .

XEL-файл также можно перетащить на панель вкладок в пользовательском интерфейсе среды SSMS.You can also drag-and-drop an .XEL file onto the tab bar in the SSMS UI.

Б.2. Просмотр целевых данныхB.2 View Target Data

Параметр Просмотреть целевые данные используется для отображения данных, записанных на данный момент.The View Target Data option displays the data that has thus far been captured.

В области Обозреватель объектов можно развернуть следующие узлы и щелкнуть правой кнопкой мыши:In the Object Explorer pane, you can expand the nodes and then right-click:

  • Управление > Расширенные события > Сеансы > [ваш_сеанс] > [ваш_целевой_узел] > Просмотреть целевые данные .Management > Extended Events > Sessions > [your-session] > [your-target-node] > View Target Data .

Целевые данные отображаются в SSMS в области с вкладками.The target data is displayed in a tabbed pane in SSMS. Это показано на следующем снимке экрана.This is shown in the following screenshot.

ваш целевой объект > Просмотреть целевые данные

Примечание

Параметр Просмотреть целевые данные используется для отображения накопленных данных из нескольких XEL-файлов из заданного сеанса событий.View Target Data displays the accumulated data from multiple .XEL files from the given event session. В ходе каждого цикла Запуск-остановка создается файл с внедренным в его имя целочисленным значением времени (для каждого последующего файла указывается более позднее время). Все файлы имеют одинаковое корневое имя.Each Start-Stop cycle creates a file with a later time-derived integer embedded in its name, but each file shares the same root name.

Б.3.Просмотр динамических данныхB.3 Watch Live Data

В активном сеансе событий можно просматривать данные событий в реальном времени по мере их получения целевым объектом.When your event session is currently active, you might want to watch the event data in real time, as it is received by the target.

  • Управление > Расширенные события > Сеансы > [ваш-сеанс] > Просмотреть динамические данные .Management > Extended Events > Sessions > [your-session] > Watch Live Data .

ваш сеанс > Просмотреть динамические данные

Отображение данных обновляется через интервал, который можно задать.The data display is updated at an interval you can specify. См. параметр Максимальная задержка диспетчеризации :See Maximum dispatch latency at:

  • Расширенные события > Сеансы > [ваш_сеанс] > Свойства > Дополнительно > Максимальная задержка диспетчеризацииExtended Events > Sessions > [your-session] > Properties > Advanced > Maximum dispatch latency

Б.4. Просмотр XEL-файла с помощью функции sys.fn_xe_file_target_read_fileB.4 View .XEL with sys.fn_xe_file_target_read_file function

Для выполнения пакетной обработки следующая системная функция может создать XML для записей в XEL-файле:For batch processing, the following system function can generate XML for the records in a .XEL file:

В.C. Экспорт целевых данныхExport the target data

Целевые данные, добавленные в SSMS, можно экспортировать в различные форматы, выполнив приведенные ниже действия.After you have the target data in SSMS, you can export the data to various formats by doing the following:

  1. Перемещение фокуса на отображение данных.Give focus to the data display.

    • Неожиданно появляется новая панель инструментов и новый пункт меню для расширенных событий.Suddenly a new toolbar and a new menu item for extended events both become visible.

    Экспорт отображаемых данных путем выбора "Расширенные события" > "Экспорт" > (CSV-, XEL-файл или в таблицу)

  2. Щелкните новый пункт меню Расширенные события .Click the new menu item Extended Events .

  3. Щелкните Экспорт , а затем выберите формат.Click Export to , and then choose a format.

Г.D. Управление отображаемыми даннымиManipulate data in the display

В пользовательском интерфейсе среды SSMS помимо простого просмотра данных существует несколько способов управления данными.The SSMS UI offers you several ways to manipulate the data, beyond merely viewing the data as is.

Г.1. Контекстные меню в отображении данныхD.1 Context menus in the data display

В разных местах отображения данных существуют различные контекстные меню, вызываемые щелчком правой кнопкой мыши.Different places in the data display offer different context menus when you right-click.

Г.1.1. Щелчок ячейки данных правой кнопкой мышиD.1.1 Right-click a data cell

На следующем снимке экрана показано контекстное меню, вызываемое при щелчке ячейки правой кнопкой мыши в отображении данных.The following screenshot shows the content menu you get when you right-click cell in the data display. На снимке экрана также показано расширение пункта меню Копировать .The screenshot also shows the expansion of the Copy menu item.

Щелчок ячейки правой кнопкой мыши в отображении данных

Г.1.2. Щелчок заголовка столбца правой кнопкой мышиD.1.2 Right-click a column header

На следующем снимке экрана показано контекстное меню, вызванное щелчком заголовка timestamp правой кнопкой мыши.The following screenshot shows the context menu from a right-click of the timestamp header.

Щелчок заголовка столбца правой кнопкой мыши в отображении данных.

На предыдущем снимке экрана также показана специальная панель инструментов для расширенных событий.The preceding screenshot also shows the special toolbar for extended events. Яркость отображения кнопки "Сведения" означает, что кнопка активна.The brightness of the Details button indicates the button is active. Поэтому на рисунке также показана вкладка Сведения и сетка как вторая часть отображения данных.Therefore the image also shows the Details tab and grid is present as a second portion of the data display.

Г.2. Выбор столбцов, объединение столбцовD.2 Choose columns, Merge columns

В окне Выбор столбцов можно выбрать, какие столбцы данных будут отображаться, а какие — нет.The Choose Columns option enables you to control which data columns are and are not displayed. Пункт меню Выбрать столбцы находится в нескольких разных местах:You can find the Choose Columns menu item in a few different places:

  • в меню Расширенные события ;On the Extended Events menu.
  • на панели инструментов расширенных событий;On the extended events toolbar.
  • в контекстном меню заголовка в отображении данных.On the context menu of a header in the data display.

После щелчка пункта Выбрать столбцы открывается диалоговое окно с подобным именем.When you click Choose Columns , the dialog of the same name is displayed.

В диалоговом окне "Выбор столбцов" также находятся параметры объединения столбцов.

Г.2.1. Объединение столбцовD.2.1 Merge columns

В диалоговом окне Выбор столбцов есть раздел, предназначенный для объединения нескольких столбцов в один для целей:The Choose Columns dialog has a section devoted to the merging of multiple columns into one, for purposes of:

  • Отображение.Display.
  • Экспорт.Export.

Г.3.ФильтрыD.3 Filters

В области расширенных событий находятся два основных типа фильтров, которые можно указать.In the area of extended events there are two major type of filters that you can specify:

  • Фильтры для предварительной фильтрации . Фильтры, которые сокращают объем данных, отправляемых подсистемой событий в целевой объект.Pre-target filters: Filters that reduce the amount of data that is sent by the events engine to your target.

  • Фильтры для последующей фильтрации . Фильтры, которые можно выбрать в пользовательском интерфейсе среды SSMS, чтобы исключить отображение некоторых целевых записей.Post-target filters: Filters you can select in the SSMS UI to exclude some target records from the display.

В среде SSMS доступны следующие фильтры отображения:The SSMS display filters are the following:

  • Фильтр диапазона времени , который проверяет столбец timestamp .A time range filter, which examines the timestamp column.
  • Фильтр значений столбцов .A column values filter.

Связь между фильтром времени и фильтром столбцов является логическим AND .The relationship between the time filter and columns filter is a Boolean ' AND '.

Фильтры диапазона времени и фильтры столбцов в диалоговом окне "Фильтры"

Г.4. Группирование и агрегированиеD.4 Grouping and aggregation

Первым шагом к сводному агрегированию данных является группирование строк по совпадающим значениям в заданном столбце.Grouping rows together by matching values in a given column, is the first step toward the summary aggregation of data.

Г.4.1. ГруппированиеD.4.1 Grouping

На панели инструментов расширенных событий кнопка Группирование используется для открытия диалогового окна для группирования отображаемых данных по заданному столбцу.On the extended events toolbar, the Grouping button starts a dialog you can use to group the displayed data by a given column. На следующем снимке экрана показано диалоговое окно, используемое для группировки по столбцу name .The next screenshot shows a dialog being used to group by the name column.

Снимок экрана: панель инструментов с выбранным элементом "Группирование" и диалоговое окно "Группирование".

После группировки данные отображаются в новом виде, как показано далее.After the grouping is achieved, the display has a new look, as shown next.

Новое отображение после группирования

Г.4.2. АгрегированиеD.4.2 Aggregation

После группирования отображаемых данных можно перейти к агрегированию данных в других столбцах.After the displayed data has been grouped, you can proceed to aggregate data in other columns. На следующем снимке экрана показаны сгруппированные данные, агрегируемые по типу count .The next screenshot shows the grouped data is being aggregated by count .

Снимок экрана: панель инструментов с выбранным элементом "Агрегирование" и диалоговое окно "Агрегирование".

После агрегирования данные отображаются в новом виде, как показано далее.After the aggregation is achieved, the display has a new look, as shown next.

Снимок экрана с добавленным значением COUNT.

Г.5. Просмотр плана запроса времени выполненияD.5 View run time query plan

Событие query_post_execution_showplan позволяет просмотреть фактический план запроса в пользовательском интерфейсе SSMS.The query_post_execution_showplan event enables you to see the actual query plan in the SSMS UI. На отображаемой панели Сведения на вкладке План запроса можно увидеть схему плана запроса. При наведении указателя мыши на узел в плане запроса появляется список имен свойств и их значений для узла.When the Details pane is visible, you can see a graph of the query plan on the Query Plan tab. By hovering over a node on the query plan, you can see a list of property names and their values for the node.

План запроса со списком свойств для одного узла

См. также разделSee also

XELite: кроссплатформенная библиотека для чтения событий XEvent из XEL-файлов или обновляющихся потоков SQL, выпущена в мае 2019 г.XELite: Cross-platform library to read XEvents from XEL files or live SQL streams, released May 2019.

Командлет PowerShell Read-SQLXEvent, выпущен в июле 2019 г.Read-SQLXEvent PowerShell cmdlet, released July 2019.