Web_tracelog的规模呈指数级增长

时间:2017-12-27 14:26:49

标签: performance wcf tracelistener

我有一个WCF服务,它在高峰时段有一个很高的请求响应周期。这可能是每分钟5000到8000个请求。 连接和500响应代码存在一些问题。 所以我启用了跟踪侦听器来跟踪服务器端发生的错误。 最终我设法找到错误,这是固定的。 现在WCF工作正常。 但问题是Web_tracelog文件的大小呈指数级增长。 当我尝试在traceviewer中打开文件时,它显示没有错误或问题。

我删除了该文件。

在30分钟内,尺寸再次为200 MB。 但是当打开时,文件中没有任何内容,并且表示文件中没有加载任何跟踪。

这有点难以理解。 我想保持启用tracelistener,所以如果有任何错误,那么我可以跟踪它们。

1 个答案:

答案 0 :(得分:0)

考虑更改跟踪配置的交换机设置,通常为VerboseError,例如:

<add name="System.Net" value="Error"/>

This post将可能的值记录为CriticalErrorVerboseWarningInformation。它没有详细描述它们,但我推断Error写得比Verbose少。

我认为空文件问题是TextWriterTraceListener的缓存行为。即使使用autoflush=true,您也需要停止应用程序(在本例中为WCF服务)来刷新缓存并获取文件中的所有内容。 This post将其描述为8kb块中的缓冲,但我发现它也可以缓存更多。也许其他人可以解释一下。