|
| 1 | +CREATE EVENT SESSION [DarkQueries] ON SERVER |
| 2 | + ADD EVENT sqlserver.sql_statement_recompile( |
| 3 | + ACTION(sqlserver.database_id,sqlserver.sql_text) |
| 4 | + WHERE ([recompile_cause]=(11))) -- Option (RECOMPILE) Requested |
| 5 | + ADD TARGET package0.event_file(SET filename=N'DarkQueries'); |
| 6 | + |
| 7 | +ALTER EVENT SESSION [DarkQueries] ON SERVER STATE = START; |
| 8 | + |
| 9 | + |
| 10 | +SELECT DarkQueryData.eventDate, |
| 11 | + DB_NAME(DarkQueryData.database_id) as DatabaseName, |
| 12 | + DarkQueryData.object_type, |
| 13 | + COALESCE(DarkQueryData.sql_text, |
| 14 | + OBJECT_NAME(DarkQueryData.object_id, DarkQueryData.database_id)) command, |
| 15 | + DarkQueryData.recompile_cause |
| 16 | + FROM sys.fn_xe_file_target_read_file ( 'DarkQueries*xel', null, null, null) event_file_value |
| 17 | + CROSS APPLY ( SELECT CAST(event_file_value.[event_data] as xml) ) event_file_value_xml ([xml]) |
| 18 | + CROSS APPLY ( |
| 19 | + SELECT event_file_value_xml.[xml].value('(event/@timestamp)[1]', 'datetime') as eventDate, |
| 20 | + event_file_value_xml.[xml].value('(event/action[@name="sql_text"]/value)[1]', 'nvarchar(max)') as sql_text, |
| 21 | + event_file_value_xml.[xml].value('(event/data[@name="object_type"]/text)[1]', 'nvarchar(100)') as object_type, |
| 22 | + event_file_value_xml.[xml].value('(event/data[@name="object_id"]/value)[1]', 'bigint') as object_id, |
| 23 | + event_file_value_xml.[xml].value('(event/data[@name="source_database_id"]/value)[1]', 'bigint') as database_id, |
| 24 | + event_file_value_xml.[xml].value('(event/data[@name="recompile_cause"]/text)[1]', 'nvarchar(100)') as recompile_cause |
| 25 | + ) as DarkQueryData |
| 26 | + ORDER BY eventDate DESC; |
0 commit comments