首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Server停止服务器端跟踪

Server停止服务器端跟踪
EN

Database Administration用户
提问于 2015-10-21 17:44:40
回答 2查看 380关注 0票数 5

我想要设置一个服务器端重放跟踪并编写脚本来设置跟踪。但是,我希望在12小时后或在创建了10 1GB文件之后结束跟踪。通常,使用最大文件计数,系统将删除最老的文件,然后创建新文件。在我的情况下,这将结束于我有文件2-11,而不是期望的1-10。我有空间限制,需要重播所有步骤从开始到结束。我可以将文件大小限制设置为10 to。我认为文件大小有1GB的限制,但这可能只是GUI中的一个限制。

对于如何在脚本到达10个文件时停止脚本,有什么想法吗?

代码语言:javascript
复制
declare @rc int
declare @TraceID int
declare @maxfilesize bigint
declare @DateTime datetime
declare @maxfilecount int

set @DateTime = DATEADD(HOUR,12,GETDATE())
set @maxfilesize = 1024
set @maxfilecount = 10

exec @rc = sp_trace_create @TraceID output, 2, N'D:\Output\Trace', @maxfilesize, @Datetime, @maxfilecount 
EN

回答 2

Database Administration用户

回答已采纳

发布于 2015-10-22 08:31:20

我想出了个办法。

代码语言:javascript
复制
declare @files table (ID int IDENTITY, FileName varchar(100))
insert into @files execute xp_cmdshell 'dir d:\Output\*.trc /b'

检查文件计数,如果它在我的限制,那么我查找跟踪id,并使用sp_trace_setstatus停止它。因为我的跟踪文件需要一段时间才能达到文件大小的限制,所以我每隔5到10分钟在代理上运行这项工作。

票数 2
EN

Database Administration用户

发布于 2015-10-21 20:52:35

没有什么容易的方法来阻止跟踪时,确定不是。文件已经到达。相反,您可以删除旧的,并保留不。使用@filecount参数定义的限制中的文件。

参考波尔- sp_跟踪_创建 -您必须使用@filecount = 'max_rollover_files'@options = 2 -指定TRACE_FILE_ROLLOVER

指定要用相同的基文件名维护的最大数量或跟踪文件。max_rollover_files是int,大于1。只有当指定了TRACE_FILE_ROLLOVER选项时,此参数才有效。当指定max_rollover_files时,Server在打开新跟踪文件之前试图通过删除最老的跟踪文件来维护max_rollover_files跟踪文件。Server通过在基本文件名后添加一个数字来跟踪跟踪文件的历史。

--

我认为文件大小有1GB的限制,但这可能只是GUI中的一个限制。

服务器端跟踪没有1GB的限制。我每小时在我的环境中创建5GB跟踪文件

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/118818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档