我有一个要记录到 MyProcess.YYYYMMDD.log 的批处理过程。通常它每天运行,但有时由于故障或测试,它每天运行多次。基于查看其他 log4net 问题,我正在使用 RollingLogFileAppender 创建基于日期的文件。但是,如果同一天发生多次运行,我最终会将这些多次运行记录到同一个文件中。
理想情况下,我希望批处理的第一次运行记录到 MyProcess.YYYYMMDD.log,但在同一天第二次运行记录到 MyProcess.YYYYMMDD.2.log 等。
使用 log4net 完成此任务的最简单方法是什么?
如果它很重要,我当前的 appender 配置如下所示:
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="MyProcess.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value=".yyyyMMdd" />
<staticLogFileName value="false"/>
<PreserveLogFileNameExtension value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>