Sql Server Profiler转换为扩展事件

前言

Sql Server 2008 开始有扩展事件功能,到 sqlserver 2012 开始,扩展事件有了UI可视化界面操作。在我跟很多客户的工程师(开发,DBA,运维都有)交流过后,发现很少有人喜欢使用扩展事件。我想这是有原因的:首先扩展事件看起来操作更麻烦,建立一个新的事件会话比原来更复杂。其次更重要的是扩展事件没法实时的跟踪语句,会有一段时间的延迟(1分钟左右)

但是扩展事件更轻量,对系统开销更小,并且可以收集更多的信息。以后肯定是会用到越来越普遍的。今天主要分享怎么把profile直接转换为扩展事件,让很多习惯语句使用profiler的同学可以很轻松就转变过来.

正文

创建proflier

首先创建一个profiler。选择好对应的事件并设置好筛选条件
这里写图片描述

转换为扩展事件
查询出来创建proflier使用的trace id. 可以通过开始和停止profiler,来确定对应的ID
这里写图片描述

这里借用的是Jonathan Kehayias 提供的脚本,需要的同学可以去下面链接下载

Jonathan Kehayias提供的转换脚本
执行下面的语句,traceid是刚才查询出来的,owentest是自己给扩展事件取的名字
后面2个选项默认。

sp_SQLskills_ConvertTraceToExtendedEvents  
    @TraceID =3,
    @SessionName='owentest',
    @PrintOutput  = 1,
    @Execute  = 0

就能够生成创建事件会话的TSQL 语句。执行生成的TSQL语句。

使用创建的会话
找到新建的事件会话并启动
这里写图片描述
查看实时的监控数据
这里写图片描述
默认只有如下2个列
这里写图片描述

可以通过选择,来添加需要的列
这里写图片描述
这里写图片描述
选择后的样子
这里写图片描述

总结

总的来讲,通过一个存储过程可以很轻松的把proflier转换为扩展事件。而且扩展事件慢慢的也会越来越易用。扩展事件是实例级别的。每个连到数据库上的人都可以看,这是proflier没有的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值