企业库日志记录5 -滚动平面文件

本文关键字:滚动 平面文件 日志 记录 企业库 | 更新日期: 2023-09-27 18:18:41

是否有办法始终将时间戳模式应用于我当前的日志文件?

下面是app.config 中日志文件监听器的示例
<add name="Exception" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.RollingFlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.RollingFlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
fileName="%APPDATA%'MyProgram'Logs'exception.log" formatter="PrismText"
rollFileExistsBehavior="Increment" rollInterval="Day" timeStampPattern="yyyy-MM-dd" rollSizeKB="3000"
maxArchivedFiles="10" />

现在,一旦我达到最大大小或日期更改,它重命名日志,但是有一种方法,我可以得到初始日志文件显示与时间戳模式?

我在我的日志文件夹中找到了这个:

exception.log <-- Current log
exception.2011-12-22.1.log
exception.2011.12.22.2.log

我想要这个:

exception.2011-12-22.log (or exception.2011-12-22.1.log) <-- Current Log
exception.2011.12.22.2.log

这不是一个大问题,因为我可以看看修改/创建的日期,但如果它是一个快速修复。

企业库日志记录5 -滚动平面文件

像这样将文件名作为时间戳如何:exception.2011-12-22.log

你可以通过fluent api来实现,或者如果你不想在代码中使用它,你可以每天修改配置文件。如果配置文件发生变化,日志块可以自动更改配置。但是这当然会让你的代码有点复杂。