这个跟踪是通过将sp_trace_create的@options参数值设置为8来配置的。@options指定为跟踪设置的选项,当设置值为8,即TRACE_PRODUCE_BLACKBOX,指定服务器产生的最后5MB跟踪信息记录将由服务器保存。TRACE_PRODUCE_BLACKBOX与所有其他选项不兼容。@tracefile指定跟踪将写入的位置和文件名,在使用TRACE_PRODUCE_BLACKBOX选项时无法指定trace_file。
TRACE_PRODUCE_BLACKBOX具有以下特性:
-
它属于滚动更新跟踪。 file_count 的默认值为 2,但用户可以使用 filecount 选项覆盖此值。
-
file_size 与其他跟踪一样默认为 5 MB 并且可以更改。
-
不能指定文件名。 文件将保存为:N'%SQLDIR%\MSSQL\DATA\blackbox.trc'
-
跟踪中仅包含以下事件和它们的列:
-
RPC starting
-
Batch starting
-
Exception
-
Attention
-
-
无法在此跟踪中添加或删除事件或列。
-
不能为此跟踪指定筛选器。
以下Transact-SQL可以用来启动一个黑盒跟踪:
|
1
2
3
4
5
|
DECLARE @TraceId INT
EXEC sp_trace_create
@TraceId OUTPUT,
@options = 8EXEC sp_trace_setstatus @TraceId, 1
|
可以通过fn_trace_getinfo函数返回跟踪信息。
|
1
|
SELECT * FROM ::fn_trace_getinfo(@TraceID)
|
这个跟踪被自动配置去使用两个滚动文件,当达到默认最大文件容量5MB时就要在两个文件之间来回翻转。然而,一些客户表示,5MB备份数据不足以以调试崩溃故障。如果要扩展容量,除了为@tracefile参数接受一个值(甚至是NULL)之外,还要为@maxfilesize参数指定一个值。以下Transact-SQL代码创建了一个最大容量为25MB的黑盒跟踪:
|
1
2
3
4
5
6
7
8
9
10
|
DECLARE @TraceId int
DECLARE @maxfilesize bigint
SET @maxfilesize = 25
EXEC sp_trace_create
@TraceId OUTPUT,
@options = 8,@tracefile = NULL,
@maxfilesize = @maxfilesize EXEC sp_trace_setstatus @TraceId, 1
|
默认情况下,黑盒跟踪文件的路径是在默认的SQL Server数据文件夹中。但是,正如文件大小可变一样,如果必要,路径也可以用@tracefile参数进行修改。
本文转自UltraSQL51CTO博客,原文链接: http://blog.51cto.com/ultrasql/1582876,如需转载请自行联系原作者
本文介绍如何在SQL Server中配置黑盒跟踪,通过设置sp_trace_create的@options参数值为8,可以指定服务器保存最后5MB的跟踪信息。此外,还介绍了如何调整黑盒跟踪的最大文件容量。
2476

被折叠的 条评论
为什么被折叠?



