如何让我的记录器使用Enterprise Library覆盖C#中的旧日志文件?

时间:2010-07-08 18:03:03

标签: c# logging enterprise-library

使用Enterprise Library 3.1,我有一个记录器,一旦到达其“rollSizeKB”,就会拒绝覆盖日志文件。我错过了什么?

<listeners>
  <add formatter="Text Formatter"
       listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
       traceOutputOptions="None" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=3.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
       rollSizeKB="1"
       rollInterval="None"
       rollFileExistsBehavior="Overwrite"           
       name="Formatted EventLog TraceListener"
       fileName="logfile.log"/>
</listeners>

为了我的测试目的,我特意小rollSizeKB。一旦logfile.log达到1KB,它就会停止写入文件并且不会覆盖它。我错过了什么?

1 个答案:

答案 0 :(得分:0)

我不是100%确定发生了什么,但这听起来像是一个许可问题。

您可以查看logfile.log所在文件夹的权限吗?作为检查:如果没有设置拒绝权限,则在文件夹上授予Everyone Full Control并重新运行程序以查看是否有所不同。

相关问题