我们有一个启用了跟踪的 .NET Framework 4.8 WCF 客户端。
问题是跟踪文件超过 10GB 并且还在增加。
我想实现一个循环跟踪文件微软链接。
我从这里微软示例链接获取了文件示例(CircularTraceListener.cs),并尝试在我的解决方案中重用它。
web.config 的 system.diagnostics 部分(仅保留循环跟踪侦听器后)如下所示:
<system.diagnostics>
<sources>
<source name="CustomNamespace" switchValue="Warning,ActivityTracing" propagateActivity="true">
<listeners>
<add name="CircularTraceListener" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="CircularTraceListener" type="CustomNamespace.TraceListeners.CircularTraceListener"
initializeData="CircularTracing-service.svclog" maxFileSizeKB="100" />
</sharedListeners>
<trace autoflush="true" />
</system.diagnostics>
这不起作用,未创建 .svclog 文件,并且我还从 WCF 服务收到错误,指出缺少活动 ID。
我做错了什么?
最大文件大小是通过在循环跟踪侦听器配置中设置
maxFileSizeKB
属性来指定的。
问题是跟踪文件超过 10GB 并且还在增加。
所以你需要像这样增加你的
maxFileSizeKB
:
<system.diagnostics>
<sources>
<source name="CustomNamespace" switchValue="Warning,ActivityTracing" propagateActivity="true">
<listeners>
<add name="CircularTraceListener" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="CircularTraceListener" type="CustomNamespace.TraceListeners.CircularTraceListener"
initializeData="CircularTracing-service.svclog" maxFileSizeKB="134217728" />
</sharedListeners>
<trace autoflush="true" />
</system.diagnostics>