Log4net生成错误的日志文件名

我想用以下模式创建日志文件名称:

SBRF_20120820.log SBRF_20120821.log SBRF_20120822.log SBRF_20120823.log 

换句话说,为每天创建一个新文件。 所以,我创建了以下配置来做到这一点:

               

例如,今天运行程序时,将创建文件SBRF_20120823.log 。 但是在接下来的几天里,日志会继续写入SBRF_20120823.log文件,并且创建的文件是:

 SBRF_20120823.log.2012-08-23 SBRF_20120823.log.2012-08-24 SBRF_20120823.log.2012-08-25 SBRF_20120823.log.2012-08-26 

如果我明天运行程序,将创建的文件是:

 SBRF_20120824.log.2012-08-24 SBRF_20120824.log.2012-08-25 SBRF_20120824.log.2012-08-26 SBRF_20120824.log.2012-08-27 

为什么?

您不要将日期模式放在中 – 这是文件名的静态部分。 你需要将它放入

此外,如果您使用的是log4net 1.2.11,则可以使用

将datePattern置于当前文件中。

我认为这就是你希望你的配置看起来像:

                 

删除

不要以为您使用RollingFileAppender更改了此行为,因此您必须创建自己的appender。