Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Förhandsversion av Microsoft Fabric
Den här artikeln förklarar de två uppsättningarna systemvyer som är relaterade till utökade händelser. Artikeln illustrerar:
- Så här gör du för
JOINolika systemvyer. - Så här gör du för specifika
SELECTtyper av information från systemvyerna.
Det finns två uppsättningar systemvyer för Extended Events:
Katalogvyer
- Dessa vyer lagrar information om definitionen av varje händelsesession som skapas av CREATE EVENT SESSION (Transact-SQL). Men dessa vyer vet ingenting om huruvida några sessioner någonsin har börjat köras.
- Om till exempel SSMS Object Explorer visar att inga händelsesessioner har definierats returnerar SELECTing från vyn
sys.server_event_session_targetsnoll rader.
- Om till exempel SSMS Object Explorer visar att inga händelsesessioner har definierats returnerar SELECTing från vyn
- De flesta av exemplen är skrivna för SQL Server och Azure SQL Managed Instance. Men med mindre redigeringar skulle de köras på Azure SQL Database och SQL Database i Fabric genom att ändra
serveri DMV-namnet tilldatabase:-
sys.server_event_session*är namnprefixet på SQL Server och Azure SQL Managed Instance. -
sys.database_event_session*är namnprefixet på Azure SQL Database och SQL Database i Fabric. - Mer information om var och en finns i Katalogvyer för utökade händelser.
-
Dynamiska hanteringsvyer (DMV)
Lagra information om den nuvarande aktiviteten för pågående händelsesessioner. Men dessa DMV:er vet lite om definitionen av sessionerna.
- Även om alla händelsesessioner för närvarande är stoppade returnerar en
SELECTfrån vynsys.dm_xe_packagesfortfarande rader eftersom olika paket har lästs in i aktivt minne vid en serverstart. - Av samma anledning
sys.dm_xe_objectsochsys.dm_xe_object_columnsreturnerar fortfarande rader.
- Även om alla händelsesessioner för närvarande är stoppade returnerar en
Namnprefix för Extended Events DMV:er är:
-
sys.dm_xe_*är namnprefixet på SQL Server och Azure SQL Managed Instance. -
sys.dm_xe_database_*är vanligtvis namnprefixet på Azure SQL Database och SQL Database i Fabric.
-
Permissions
För att komma åt SELECT från systemvyerna blir följande behörighet nödvändig:
- SQL Server 2019 (15.x) och tidigare versioner kräver
VIEW SERVER STATEbehörighet på servern. - SQL Server 2022 (16.x) och senare versioner kräver
VIEW SERVER PERFORMANCE STATEbehörighet på servern. - Azure SQL Database och SQL Database i Fabric kräver
VIEW DATABASE PERFORMANCE STATEbehörighet i databasen.
Katalogvyer
För den här sidan skapar du en extended events-session med SSMS eller med T-SQL. Använd alltid den senaste uppdateringen av SSMS.
Skapa session i SQL Server Management Studio (SSMS)
I SSMS i objektutforskaren kan du starta dialogrutan Ny session genom att expandera Hantering>av utökade händelser och sedan högerklicka på Sessioner>Ny session.
I den stora dialogrutan Ny session , i det första avsnittet med etiketten Allmänt, ser vi att alternativet har valts för att starta händelsesessionen vid serverstart.
Härnäst i avsnittet Händelser ser vi att lock_deadlock händelsen har valts. För den händelsen ser vi att tre åtgärder har valts. Det innebär att knappen Konfigurera har valts, vilket blir grått när du har valt den.
I avsnittet Konfigurera händelser> ser vi sedan att resource_type har angetts till .PAGE Det innebär att händelsedata inte skickas från händelsemotorn till målet om det resource_type värdet är något annat än PAGE.
Vi ser ytterligare predikatfilter för databasnamnet och för en räknare.
Härnäst i avsnittet Datalagring ser vi att event_file har valts som mål. Dessutom ser vi att alternativet Aktivera filrollover har valts.
Slutligen ser vi i avsnittet Avancerat att värdet Maximal svarstid för sändning minskades till 4 sekunder.
Skapa händelsesession i T-SQL
Oavsett hur en händelsesessionsdefinition skapas kan sessionen från SSMS omvandlas till ett perfekt matchande Transact-SQL skript. Du kan granska föregående skärmbilder av ny session och jämföra deras synliga specifikationer med satserna i följande genererade T-SQL-skript CREATE EVENT SESSION .
Om du vill bakåtkompilera en händelsesession kan du högerklicka på sessionsnoden i Objektutforskaren och sedan välja Skriptsession som>CREATE till** >Urklipp.
CREATE EVENT SESSION [event_session_test3]
ON SERVER -- Or, if on Azure SQL Database, ON DATABASE.
ADD EVENT sqlserver.lock_deadlock
(
SET
collect_database_name = (1)
ACTION
(
package0.collect_system_time,
package0.event_sequence,
sqlserver.client_hostname
)
WHERE
(
[database_name] = N'InMemTest2'
AND [package0].[counter] <= (16)
AND [resource_type] = (6)
)
)
ADD TARGET package0.event_file
(
SET
filename = N'c:\temp\\event_session_test3_EF.xel',
max_file_size = (20),
max_rollover_files = (2)
)
WITH
(
MAX_MEMORY = 4096 KB,
EVENT_RETENTION_MODE = ALLOW_SINGLE_EVENT_LOSS,
MAX_DISPATCH_LATENCY = 4 SECONDS,
MAX_EVENT_SIZE = 0 KB,
MEMORY_PARTITION_MODE = NONE,
TRACK_CAUSALITY = OFF,
STARTUP_STATE = ON
);
Katalogvy VÄLJ ANSLUT UNION
Följande T-SQL-instruktion SELECT är lång bara för att den UNIONs flera små SELECTs tillsammans. Alla små SELECT:er kan köras på egen hand. De små SELECT-frågor visar hur de olika systemkatalogvyerna ska anslutas tillsammans.
SELECT
s.name AS [Session-Name],
'1_EVENT' AS [Clause-Type],
'Event-Name' AS [Parameter-Name],
e.name AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
JOIN sys.server_event_session_events AS e
ON e.event_session_id = s.event_session_id
WHERE
s.name = 'event_session_test3'
UNION ALL
SELECT
s.name AS [Session-Name],
'2_EVENT_SET' AS [Clause-Type],
f.name AS [Parameter-Name],
f.value AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
JOIN sys.server_event_session_events AS e
ON e.event_session_id = s.event_session_id
JOIN sys.server_event_session_fields As f
ON f.event_session_id = s.event_session_id
AND f.object_id = e.event_id
WHERE
s.name = 'event_session_test3'
UNION ALL
SELECT
s.name AS [Session-Name],
'3_EVENT_ACTION' AS [Clause-Type],
a.package + '.' + a.name
AS [Parameter-Name],
'(Not_Applicable)' AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
JOIN sys.server_event_session_events AS e
ON e.event_session_id = s.event_session_id
JOIN sys.server_event_session_actions As a
ON a.event_session_id = s.event_session_id
AND a.event_id = e.event_id
WHERE
s.name = 'event_session_test3'
UNION ALL
SELECT
s.name AS [Session-Name],
'4_EVENT_PREDICATES' AS [Clause-Type],
e.predicate AS [Parameter-Name],
'(Not_Applicable)' AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
JOIN sys.server_event_session_events AS e
ON e.event_session_id = s.event_session_id
WHERE
s.name = 'event_session_test3'
UNION ALL
SELECT
s.name AS [Session-Name],
'5_TARGET' AS [Clause-Type],
t.name AS [Parameter-Name],
'(Not_Applicable)' AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
JOIN sys.server_event_session_targets AS t
ON t.event_session_id = s.event_session_id
WHERE
s.name = 'event_session_test3'
UNION ALL
SELECT
s.name AS [Session-Name],
'6_TARGET_SET' AS [Clause-Type],
f.name AS [Parameter-Name],
f.value AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
JOIN sys.server_event_session_targets AS t
ON t.event_session_id = s.event_session_id
JOIN sys.server_event_session_fields As f
ON f.event_session_id = s.event_session_id
AND f.object_id = t.target_id
WHERE
s.name = 'event_session_test3'
UNION ALL
SELECT
s.name AS [Session-Name],
'7_WITH_MAX_MEMORY' AS [Clause-Type],
'max_memory' AS [Parameter-Name],
s.max_memory AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
WHERE
s.name = 'event_session_test3'
UNION ALL
SELECT
s.name AS [Session-Name],
'7_WITH_STARTUP_STATE' AS [Clause-Type],
'startup_state' AS [Parameter-Name],
s.startup_state AS [Parameter-Value]
FROM
sys.server_event_sessions AS s
WHERE
s.name = 'event_session_test3'
ORDER BY
[Session-Name],
[Clause-Type],
[Parameter-Name]
;
Utgång
Följande tabell visar utdata från körning av föregående SELECT JOIN UNION. Namnen och värdena på utdataparametrarna mappas till det som tydligt visas i föregående CREATE EVENT SESSION uttalande.
| Sessionsnamn | Klauxtyp | Parameter-namn | Parameter-Värde |
|---|---|---|---|
event_session_test3 |
1_EVENT | Evenemangsnamn | lock_deadlock |
event_session_test3 |
2_EVENT_SET | collect_database_name | 1 |
event_session_test3 |
3_EVENT_ACTION | sqlserver.client_hostname | (Not_Applicable) |
event_session_test3 |
3_EVENT_ACTION | sqlserver.collect_system_time | Ej tillämplig |
event_session_test3 |
3_EVENT_ACTION | sqlserver.event_sequence | (Not_Applicable) |
event_session_test3 |
4_HÄNDELSE_PREDIKAT | ([sqlserver]. [equal_i_sql_unicode_string]([database_name],N'InMemTest2') AND [package0]. [räknare]<=(16)) |
(Not_Applicable) |
event_session_test3 |
5_TARGET | händelsefil | (Not_Applicable) |
event_session_test3 |
6_TARGET_SET | filename | c:\temp\event_session_test3_EF.xel |
event_session_test3 |
6_MÅL_INSTÄLLNING | maximal_filstorlek | 20 |
event_session_test3 |
6_MÅL_SET | max_rollover_files | 2 |
event_session_test3 |
7_WITH_MAX_MEMORY | maximal minnesanvändning | 4096 |
event_session_test3 |
7_WITH_STARTUP_STATE | starttillstånd | 1 |
Detta slutför avsnittet om katalogvyer.
Dynamiska hanteringsvyer (DMV:er)
Det här avsnittet innehåller flera Transact-SQL-instruktioner SELECT som var och en har ett särskilt användbart affärssyfte. Dessutom visar SELECT:erna hur du kan JOIN samla DMV:erna för alla nya användningsområden som du vill.
Referensdokumentation för DMV:erna finns i Dynamiska hanteringsvyer för utökade händelser
Alla objekt som du kan använda i området för utökade händelser kommer från paket som läses in i systemet. I det här avsnittet visas alla paket och deras beskrivningar.
SELECT --C.1
p.name AS [Package],
p.description AS [Package-Description]
FROM
sys.dm_xe_packages AS p
ORDER BY
p.name;
Utgång
Här är listan över paket.
| Package | Paketbeskrivning |
|---|---|
filestream |
Utökade händelser för SQL Server FILESTREAM och FileTable |
package0 |
Standardpaket. Innehåller alla standardtyper, kartor, jämför operatorer, åtgärder och mål |
qds |
Utökade händelser för Query Store |
SecAudit |
Säkerhetsgranskningshändelser |
sqlclr |
Utökade händelser för SQL CLR |
sqlos |
Utökade händelser för SQL-operativsystem |
SQLSatellite |
Utökade händelser för SQL Server Machine Learning Services |
sqlserver |
Utökade händelser för Microsoft SQL Server |
sqlsni |
Utökade händelser för Microsoft SQL Server |
ucs |
Utökade händelser för Unified Communications Stack |
XtpCompile |
Utökade händelser för XTP-kompilering |
XtpEngine |
Utökade händelser för XTP-motorn |
XtpRuntime |
Utökade händelser för XTP Runtime |
Definitioner av föregående initialismer:
-
clr= Common Language Runtime för .NET -
qds= Query Data Store -
sni= Servernätverksgränssnitt -
ucs= Enhetlig kommunikationsstack -
xtp= Extrem transaktionsbearbetning
VÄLJ alla tillgängliga objekt sorterade efter typ
Följande SELECT returnerar en rad för varje objekt.
SELECT --C.3
o.object_type AS [Type-of-Item],
p.name AS [Package],
o.name AS [Item],
o.description AS [Item-Description]
FROM
sys.dm_xe_objects AS o
JOIN sys.dm_xe_packages AS p ON o.package_guid = p.guid
WHERE
o.object_type IN ('action' , 'target' , 'pred_source')
AND
(
(o.capabilities & 1) = 0
OR
o.capabilities IS NULL
)
ORDER BY
[Type-of-Item],
[Package],
[Item];
Tillgängliga datafält för din händelse
Följande SELECT returnerar alla datafält som är specifika för din händelsetyp.
- Observera satsobjektet
WHERE:column_type = 'data'. - Du skulle också behöva redigera satsvärdet
WHEREföro.name =.
SELECT -- C.4
p.name AS [Package],
c.object_name AS [Event],
c.name AS [Column-for-Predicate-Data],
c.description AS [Column-Description]
FROM
sys.dm_xe_object_columns AS c
JOIN sys.dm_xe_objects AS o
ON o.name = c.object_name
JOIN sys.dm_xe_packages AS p
ON p.guid = o.package_guid
WHERE
c.column_type = 'data'
AND
o.object_type = 'event'
AND
o.name = '\<EVENT-NAME-HERE!>' --'lock_deadlock'
ORDER BY
[Package],
[Event],
[Column-for-Predicate-Data];
Utgång
Följande rader returnerades av föregående SELECT, WHERE o.name = 'lock_deadlock':
- Varje rad representerar ett valfritt filter för
sqlserver.lock_deadlockhändelsen. - Kolumnen
Column-Descriptionutelämnas från följande visning. Dess värde är oftaNULL. - Det här är faktiska utdata, förutom den utelämnade kolumnen Beskrivning som ofta
NULLär . - Dessa rader är
WHERE object_type = 'lock_deadlock'.
| Package | Event | Kolumn-för-Predikat-Data |
|---|---|---|
sqlserver |
lock_deadlock |
associated_object_id |
sqlserver |
lock_deadlock |
database_id |
sqlserver |
lock_deadlock |
database_name |
sqlserver |
lock_deadlock |
deadlock_id |
sqlserver |
lock_deadlock |
duration |
sqlserver |
lock_deadlock |
lockspace_nest_id |
sqlserver |
lock_deadlock |
lockspace_sub_id |
sqlserver |
lock_deadlock |
lockspace_workspace_id |
sqlserver |
lock_deadlock |
mode |
sqlserver |
lock_deadlock |
object_id |
sqlserver |
lock_deadlock |
owner_type |
sqlserver |
lock_deadlock |
resource_0 |
sqlserver |
lock_deadlock |
resource_1 |
sqlserver |
lock_deadlock |
resource_2 |
sqlserver |
lock_deadlock |
resource_description |
sqlserver |
lock_deadlock |
resource_type |
sqlserver |
lock_deadlock |
transaction_id |
sys.dm_xe_map_values och händelsefält
Följande SELECT innehåller en JOIN i sys.dm_xe_map_values vyn.
Syftet med att SELECT visa de många fält som du kan välja mellan för händelsesessionen. Händelsefälten kan användas på två sätt:
- Välj vilka fältvärden som ska skrivas till målet för varje händelsehändelse.
- Så här filtrerar du vilka händelsehändelser som ska skickas till och behållas från målet.
SELECT --C.5
dp.name AS [Package],
do.name AS [Object],
do.object_type AS [Object-Type],
'o--c' AS [O--C],
dc.name AS [Column],
dc.type_name AS [Column-Type-Name],
dc.column_type AS [Column-Type],
dc.column_value AS [Column-Value],
'c--m' AS [C--M],
dm.map_value AS [Map-Value],
dm.map_key AS [Map-Key]
FROM sys.dm_xe_objects AS do
JOIN sys.dm_xe_object_columns AS dc
ON dc.object_name = do.name
JOIN sys.dm_xe_map_values AS dm
ON dm.name = dc.type_name
JOIN sys.dm_xe_packages AS dp
ON dp.guid = do.package_guid
WHERE
do.object_type = 'event'
AND
do.name = '\<YOUR-EVENT-NAME-HERE!>' --'lock_deadlock'
ORDER BY
[Package],
[Object],
[Column],
[Map-Value];
Utgång
Nästa är ett urval av de faktiska 100+ raderna med utdata från föregående T-SQL SELECT. Raden för resource_type är relevant för predikatfiltreringen som används i event_session_test3 exempel som finns någon annanstans i den här artikeln.
/*** 5 sampled rows from the actual rows returned.
NOTE: 'resource_type' under 'Column'.
Package Object Object-Type O--C Column Column-Type-Name Column-Type Column-Value C--M Map-Value Map-Key
------- ------ ----------- ---- ------ ---------------- ----------- ------------ ---- --------- -------
sqlserver lock_deadlock event o--c CHANNEL etw_channel readonly 2 c--m Operational 4
sqlserver lock_deadlock event o--c KEYWORD keyword_map readonly 16 c--m access_methods 1024
sqlserver lock_deadlock event o--c mode lock_mode data NULL c--m IX 8
sqlserver lock_deadlock event o--c owner_type lock_owner_type data NULL c--m Cursor 2
sqlserver lock_deadlock event o--c resource_type lock_resource_type data NULL c--m PAGE 6
Therefore, on your CREATE EVENT SESSION statement, in its ADD EVENT WHERE clause,
you could put:
WHERE( ... resource_type = 6 ...) -- Meaning: 6 = PAGE.
***/
Parametrar för mål
Följande SELECT returnerar varje parameter för målet. Varje parameter taggas för att ange om den är obligatorisk. De värden som du tilldelar parametrar påverkar målets beteende.
- Observera satsobjektet
WHERE:object_type = 'customizable'. - Du skulle också behöva redigera villkorsvärdet
WHEREföro.name =.
SELECT --C.6
p.name AS [Package],
o.name AS [Target],
c.name AS [Parameter],
c.type_name AS [Parameter-Type],
CASE c.capabilities_desc
WHEN 'mandatory' THEN 'YES_Mandatory'
ELSE 'Not_mandatory'
END AS [IsMandatoryYN],
c.description AS [Parameter-Description]
FROM
sys.dm_xe_objects AS o
JOIN sys.dm_xe_packages AS p
ON o.package_guid = p.guid
LEFT OUTER JOIN sys.dm_xe_object_columns AS c
ON o.name = c.object_name
AND c.column_type = 'customizable' -- !
WHERE
o.object_type = 'target'
AND
o.name LIKE '%' -- Or '\<YOUR-TARGET-NAME-HERE!>'.
ORDER BY
[Package],
[Target],
[IsMandatoryYN] DESC,
[Parameter];
Utgång
Följande rader med parametrar är en liten delmängd av dem som returneras av föregående SELECT.
/*** Actual output, all rows, where target name = 'event_file'.
Package Target Parameter Parameter-Type IsMandatoryYN Parameter-Description
------- ------ --------- -------------- ------------- ---------------------
package0 event_file filename unicode_string_ptr YES_Mandatory Specifies the location and file name of the log
package0 event_file increment uint64 Not_mandatory Size in MB to grow the file
package0 event_file lazy_create_blob boolean Not_mandatory Create blob upon publishing of first event buffer, not before.
package0 event_file max_file_size uint64 Not_mandatory Maximum file size in MB
package0 event_file max_rollover_files uint32 Not_mandatory Maximum number of files to retain
package0 event_file metadatafile unicode_string_ptr Not_mandatory Not used
***/
DMV SELECT kastar target_data-kolumnen till XML
Detta DMV SELECT returnerar datarader från målobjektet för din aktiva händelsesession. Data skickas till XML, vilket gör att den returnerade cellen kan väljas för enkel visning i SSMS.
- Om händelsesessionen stoppas returnerar detta
SELECTnoll rader. - Du skulle behöva redigera satsvärdet
WHEREförs.name =.
SELECT --C.7
s.name,
t.target_name,
CAST(t.target_data AS XML) AS [XML-Cast]
FROM
sys.dm_xe_session_targets AS t
JOIN sys.dm_xe_sessions AS s
ON s.address = t.event_session_address
WHERE
s.name = '\<Your-Session-Name-Here!>';
Utdata, den enda raden, med sin XML-cell
Här är den enda raden som är resultat från den föregående SELECT. Kolumnen XML-Cast innehåller en XML-sträng som SSMS förstår är XML. Därför förstår SSMS att det bör göra cellen XML-Cast valbar.
För den här körningen:
- Värdet
s.name =har angetts till en händelsesession förcheckpoint_beginhändelsen. - Målet var en ring_buffer.
name target_name XML-Cast
---- ----------- --------
checkpoint_session_ring_buffer2 ring_buffer <RingBufferTarget truncated="0" processingTime="0" totalEventsProcessed="2" eventCount="2" droppedCount="0" memoryUsed="104"><event name="checkpoint_begin" package="sqlserver" timestamp="2016-07-09T01:28:23.508Z"><data name="database_id"><type name="uint32" package="package0" /><value>5</value></data></event><event name="checkpoint_begin" package="sqlserver" timestamp="2016-07-09T01:28:26.975Z"><data name="database_id"><type name="uint32" package="package0" /><value>5</value></data></event></RingBufferTarget>
Utdata, XML visas snyggt när cellen är markerad
När XML-Cast cellen är markerad visas följande vackra skärm.
<RingBufferTarget truncated="0" processingTime="0" totalEventsProcessed="2" eventCount="2" droppedCount="0" memoryUsed="104">
<event name="checkpoint_begin" package="sqlserver" timestamp="2016-07-09T01:28:23.508Z">
<data name="database_id">
<type name="uint32" package="package0" />
<value>5</value>
</data>
</event>
<event name="checkpoint_begin" package="sqlserver" timestamp="2016-07-09T01:28:26.975Z">
<data name="database_id">
<type name="uint32" package="package0" />
<value>5</value>
</data>
</event>
</RingBufferTarget>
VÄLJ från en funktion för att hämta event_file data från diskenheten
Anta att händelsesessionen samlade in data och senare stoppades. Om din session konfigurerades för att använda event_file-target kan du fortfarande hämta data genom att anropa funktionen sys.fn_xe_target_read_file.
- Du måste redigera sökvägen och filnamnet i parametern för funktionsanropet innan du kör den här
SELECT.- Bry dig inte om de extra siffror som SQL-systemet bäddar in i din faktiska . XEL-filnamn varje gång du startar om sessionen. Ge bara det normala rotnamnet och tillägget.
SELECT --C.8
f.module_guid,
f.package_guid,
f.object_name,
f.file_name,
f.file_offset,
CAST(f.event_data AS XML) AS [Event-Data-As-XML]
FROM
sys.fn_xe_file_target_read_file(
'\<YOUR-PATH-FILE-NAME-ROOT-HERE!>*.xel',
--'c:\temp\\Checkpoint_Begins_ES*.xel', -- Example.
NULL, NULL, NULL
) AS f;
Utdata, rader som returneras av SELECT FRÅN funktionen
Nästa är de rader som returneras av föregående SELECT FROM funktion.
Event-Data-As-XML XML-kolumnen innehåller de data som specifikt handlar om händelsehändelsen.
module_guid package_guid object_name file_name file_offset Event-Data-As-XML
----------- ------------ ----------- --------- ----------- -----------------
D5149520-6282-11DE-8A39-0800200C9A66 03FDA7D0-91BA-45F8-9875-8B6DD0B8E9F2 checkpoint_begin c:\temp\\Checkpoint_Begins_ES_20160615bb-_0_131125086091700000.xel 5120 <event name="checkpoint_begin" package="sqlserver" timestamp="2016-07-09T03:30:14.023Z"><data name="database_id"><value>5</value></data><action name="session_id" package="sqlserver"><value>60</value></action><action name="database_id" package="sqlserver"><value>5</value></action></event>
D5149520-6282-11DE-8A39-0800200C9A66 03FDA7D0-91BA-45F8-9875-8B6DD0B8E9F2 checkpoint_end c:\temp\\Checkpoint_Begins_ES_20160615bb-_0_131125086091700000.xel 5120 <event name="checkpoint_end" package="sqlserver" timestamp="2016-07-09T03:30:14.025Z"><data name="database_id"><value>5</value></data></event>
D5149520-6282-11DE-8A39-0800200C9A66 03FDA7D0-91BA-45F8-9875-8B6DD0B8E9F2 checkpoint_begin c:\temp\\Checkpoint_Begins_ES_20160615bb-_0_131125086091700000.xel 5632 <event name="checkpoint_begin" package="sqlserver" timestamp="2016-07-09T03:30:17.704Z"><data name="database_id"><value>5</value></data><action name="session_id" package="sqlserver"><value>60</value></action><action name="database_id" package="sqlserver"><value>5</value></action></event>
D5149520-6282-11DE-8A39-0800200C9A66 03FDA7D0-91BA-45F8-9875-8B6DD0B8E9F2 checkpoint_end c:\temp\\Checkpoint_Begins_ES_20160615bb-_0_131125086091700000.xel 5632 <event name="checkpoint_end" package="sqlserver" timestamp="2016-07-09T03:30:17.709Z"><data name="database_id"><value>5</value></data></event>
Utdata för en XML-cell
Här är innehållet i den första XML-cellen från den föregående returnerade raduppsättningen.
<event name="checkpoint_begin" package="sqlserver" timestamp="2016-07-09T03:30:14.023Z">
<data name="database_id">
<value>5</value>
</data>
<action name="session_id" package="sqlserver">
<value>60</value>
</action>
<action name="database_id" package="sqlserver">
<value>5</value>
</action>
</event>