SQL Server-如何记录潜在客户阻止过程?

时间:2019-04-11 12:09:23

标签: sql-server logging process trace blocked

我们有一个庞大的应用程序,我们从多个方面访问我们的sql服务器。我们的用户抱怨性能问题,但我们认为它并不慢。取而代之的是,我们认为我们的障碍使用户感到性能降低。

因此,我们要记录阻止其他进程超过5秒的进程。在记录结束时,我们想计算一个进程阻止另一个进程的频率。

我们已经尝试了以下方法:

  1. 我们试图找到显示与活动监视器完全相同的结果的sql(没有成功)
  2. 我们创建了一个跟踪文件,并使用以下脚本进行了分析:https://michaeljswart.com/2011/04/a-new-way-to-examine-blocked-process-reports/
  3. 我们启用了阻塞进程阈值(5秒),但是我没有有关阻塞进程的信息(SQL句柄或类似的东西)。我通过扩展事件记录了“阻止的进程”
  4. 我们观看了活动监视器,但是由于短块的原因,收集有用的数据似乎真的很困难,我们无法计数特定过程块的频率

我们正在寻找一种具有以下信息的记录方法:

  • 封锁的SQL
  • 阻止SQL(存储过程或过程中的当前语句)
  • 封锁时间
  • 时间
  • 数据库

我们认为sql profiler不会对性能产生影响。

0 个答案:

没有答案