【发布时间】:2018-02-27 06:59:26
【问题描述】:
我正在使用 Microsoft.ServiceModel.Samples.CircularTracecListener 二进制文件在 Web 服务上实现错误日志记录。
它应该写入文件直到达到 maxFileSizeKB,然后滚动到辅助文件。 当我用低文件大小限制测试它并且在短时间内发生滚动时,这个过程运行良好。
奇怪的是,当我设置 maxFileSizeKB 时,第二天我发现记录器覆盖了主文件,而次要文件没有被触及。
web.config文件设置如下:
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Information,ActivityTracing" >
<listeners>
<add name="CircularTraceListener" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="CircularTraceListener" type="Microsoft.Samples.ServiceModel.CircularTraceListener,CircularTraceListener"
initializeData="c:\log\webserviceLog.xml" maxFileSizeKB="5120" />
</sharedListeners>
<trace autoflush="true" />
有人遇到过类似的问题吗?
我只能想到重新启动网络服务并使其从第一个文件开始。
可能是应用程序池回收?
当我检查 iis 日志时,我发现应用程序池在我的日志文件被擦除的同时被回收。
【问题讨论】:
标签: c# tracelistener