我有一个WCF服务,它在高峰时段有一个很高的请求响应周期。这可能是每分钟5000到8000个请求。 连接和500响应代码存在一些问题。 所以我启用了跟踪侦听器来跟踪服务器端发生的错误。 最终我设法找到错误,这是固定的。 现在WCF工作正常。 但问题是Web_tracelog文件的大小呈指数级增长。 当我尝试在traceviewer中打开文件时,它显示没有错误或问题。
我删除了该文件。
在30分钟内,尺寸再次为200 MB。 但是当打开时,文件中没有任何内容,并且表示文件中没有加载任何跟踪。
这有点难以理解。 我想保持启用tracelistener,所以如果有任何错误,那么我可以跟踪它们。
答案 0 :(得分:0)
考虑更改跟踪配置的交换机设置,通常为Verbose
到Error
,例如:
<add name="System.Net" value="Error"/>
This post将可能的值记录为Critical
,Error
,Verbose
,Warning
和Information
。它没有详细描述它们,但我推断Error
写得比Verbose
少。
我认为空文件问题是TextWriterTraceListener的缓存行为。即使使用autoflush=true
,您也需要停止应用程序(在本例中为WCF服务)来刷新缓存并获取文件中的所有内容。 This post将其描述为8kb块中的缓冲,但我发现它也可以缓存更多。也许其他人可以解释一下。