你是否碰到过这些问题:一个查询导致SQL Server崩溃,或者因为CPU飙到100%而导致服务器不可用?
SQL Server提供了另一个开箱即用的后台跟踪就是黑盒跟踪(Blackbox Traces)。这个跟踪被设计为同飞机上的黑匣子功能类似,SQL Server黑匣子就是拥有大量运行数据的记录。黑匣子记录了发送到SQL Server的所有查询以及类似错误信息的有用记录,可以帮助诊断间歇性服务器崩溃,或者知道在CPU飙高之前发生了什么错误。
它比默认跟踪更大一些,并包含了下面的信息:
存储过程的执行“SP:Starting”。
T-SQL的执行“SQL:BatchStarting”。
错误和警告事件“Exception”和“Attention”。
对于这些事件,下面的信息被跟踪:
执行的查询或错误信息
执行的日志和时间
执行查询或存储过程的用户
事件发生的数据库
发送查询或导致错误的服务器或工作站
实施查询的应用程序名
黑匣子写入到128K的块文件中。换句话说,当启动黑盒,直到它有128K的有价值数据写入的时候,否则它总是0K。这样的架构使得它是非常有效率的进程,使用了最少的CPU资源。所以,我们可以运行在大量时间段内运行它,而不用担心它会降低服务器性能。如果你停止了SQL Server服务,SQL Server将会将缓存中的数据写入这个跟踪文件。
本文出自 “滴水石穿” 博客,请务必保留此出处http://ultrasql.blog.51cto.com/9591438/1582870
原文地址:http://ultrasql.blog.51cto.com/9591438/1582870