1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
SELECT
r.session_id,
r.request_id as session_request_id,
--r.connection_id,
r.status,
s.host_name,
c.client_net_address,
CASE WHEN s.login_name = s.original_login_name THEN s.login_name ELSE s.login_name + ' (' + s.original_login_name + ')' END as login_name,
s.program_name,
db_name(r.database_id) as database_name,
r.command,
--r.sql_handle,
--r.statement_start_offset,
--r.statement_end_offset,
--r.plan_handle,
substring(st.text,r.statement_start_offset/2 ,(CASE WHEN r.statement_end_offset = -1 THEN len(convert(nvarchar(max), st.text)) * 2 ELSE r.statement_end_offset END - r.statement_start_offset)/2) as statement,
--st.text as query_text,
--qp.query_plan as xml_query_plan,
r.start_time,
r.total_elapsed_time as total_elapsed_time_ms,
r.cpu_time as cpu_time_ms,
r.wait_type as current_wait_type,
r.wait_resource as current_wait_resource,
r.wait_time as current_wait_time_ms,
r.last_wait_type,
r.blocking_session_id,
r.reads,
r.writes,
r.logical_reads,
r.row_count,
r.prev_error,
r.nest_level,
r.granted_query_memory,
r.executing_managed_code,
r.transaction_id,
r.open_transaction_count,
r.open_resultset_count,
r.scheduler_id
FROM
sys.dm_exec_requests r
LEFT OUTER JOIN sys.dm_exec_sessions s on s.session_id = r.session_id
LEFT OUTER JOIN sys.dm_exec_connections c on c.connection_id = r.connection_id
CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) st
CROSS APPLY sys.dm_exec_query_plan(r.plan_handle) qp
WHERE
r.status = N'suspended'; |
Partager