【监控笔记】【2.3】扩展事件——慢查询SQL(执行超过3S的SQL)
2024-08-23 10:40:11
--sql server 2008及以上才支持,2012及以上才支持GUI界面
msdn 扩展事件:点击打开链接
【1】T-SQL实现
基于 rpc_completed(远程过程调用已完成时发生) 事件与 sql_batch_completed(Transact-SQL 批处理执行完毕时发生) 事件
转自:https://blog.csdn.net/yenange/article/details/52592814 -- 删除事件会话
IF EXISTS(SELECT * FROM sys.server_event_sessions WHERE name = 'slow_query')
DROP EVENT SESSION slow_query ON SERVER
GO
-- 创建事件会话
CREATE EVENT SESSION [slow_query] ON SERVER
ADD EVENT sqlserver.rpc_completed(
ACTION(sqlos.task_time,sqlserver.database_name,sqlserver.nt_username,sqlserver.sql_text,sqlserver.transaction_id,sqlserver.username)
WHERE
--AND [sqlserver].[database_name]=N'xxxx' -- 数据库名, 自行修改
--and sqlserver.username=N'xxxx' -- 数据库用户名, 自行修改
[duration]>=3000000 -- 消耗秒数超 3 秒
),
ADD EVENT sqlserver.sql_batch_completed(
ACTION(sqlos.task_time,sqlserver.database_name,sqlserver.nt_username,sqlserver.sql_text,sqlserver.transaction_id,sqlserver.username)
WHERE
--AND [sqlserver].[database_name]=N'xxxx' -- 数据库名, 自行修改
--and sqlserver.username=N'xxxx' -- 数据库用户名, 自行修改
[duration]>=3000000 -- 消耗秒数超 3 秒
)
ADD TARGET package0.event_file(SET filename=N'D:\Tools\DBA\EventLog\slow_query.xel',max_file_size=(10)) --路径、文件MB, 自行修改
WITH (STARTUP_STATE=ON)
GO
-- 启用(停止)事件会话(START / STOP)
ALTER EVENT SESSION slow_query ON SERVER STATE=START
GO
【2】GUI实现
基于 sql_statement_completed(Transact-SQL 语句已完成时发生)
和 query_post_execution_showplan (在执行 SQL 语句后发生。此事件返回实际查询计划的 XML 表示形式。使用此事件可能带来严重的性能开销,所以只有在短时间内解决或监视特定问题时才应使用此事件。)
(1)新建会话,把sql_statement_completed 和 query_post_execution_showplan 事件给选上
(2)谓词 筛选出持续时间大于3s的,并排除系统数据库,两个事件都这么设置
(3)实时监控,查看结果
(4)再做修改,加全局字段与事件字段。而query_post_execution_showplan事件加了username全局字段和databaseName
(5)查看加了字段之后的结果
相关参考文章:
概念与介绍~https://blog.csdn.net/kk185800961/article/details/49725903
最新文章
- 通过三次优化,我将gif加载优化了16.9%
- 关于mysql MYISAM引擎的锁问题
- App Transport Security has blocked a cleartext HTTP (http://)
- printf函数
- 使用fastboot工具刷入recovery.img、boot.img、system.img等
- zju(8)串口通信实验
- Copy List with Random Pointer [LeetCode]
- css实现一段不够一行时居中显示,多于一行时两端对齐
- toast提示信息获取
- IDEA升级版本后界面出现变小,字体变细的问题解决
- 另存了一次网页之后其它word打开格式都变了
- Mabatis面试题
- Qt linux获取cpu使用率、内存、网络收发速度、磁盘读写速度、磁盘剩余空间等
- input实现图片或视频上传(样式+代码)
- C#调用cmd命令
- Cracking The Coding Interview 5.6
- 反射中的BindingFlags
- angularjs中的单选框绑定数据注意事项
- C错误异常处理,异常处理
- Python 中的map函数,filter函数,reduce函数