为了跟踪我在应用程序上的操作,我正在使用 sql profiler。
工作正常,我正在连接到服务器,过滤主机名,并且改变我在应用程序上单击的内容将反映为分析器中的 sql 代码。
但是当我尝试使用扩展事件来实现相同的目标时,由于某种原因它不起作用。在我开始会话后,我会去“观看实时数据”,但是,无论我在应用程序上做什么,它都不会反映在 SSMS 查询窗口中。
如果我在 SSMS 中运行某些东西,它会反映出来。但在使用应用程序时不会。
你知道我在这里想念什么吗?
更新:
添加了跟踪定义:
CREATE EVENT SESSION [test] ON SERVER
ADD EVENT sqlserver.rpc_completed(SET collect_data_stream=(1),collect_output_parameters=(1),collect_statement=(1)
ACTION(sqlserver.database_id,sqlserver.database_name)),
ADD EVENT sqlserver.rpc_starting(SET collect_data_stream=(0),collect_statement=(1)
ACTION(sqlserver.database_id,sqlserver.database_name,sqlserver.session_id,sqlserver.sql_text))
WITH (MAX_MEMORY=4096 KB,EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 SECONDS,MAX_EVENT_SIZE=0 KB,MEMORY_PARTITION_MODE=NONE,TRACK_CAUSALITY=OFF,STARTUP_STATE=OFF)
GO
更新 2
如果我同时将它与 sql profiler(附加片段)进行比较 - 在 Xevents 中我只会看到SQL:Batch Starting
与我无关的事务。
那意味着什么?