【发布时间】:2016-02-02 01:41:43
【问题描述】:
我想在 log4net 中设置一个 RollingFileAppender,这样当前(即今天的)日志文件总是有一个静态名称(如 app.log),但在一天结束时翻转,它应该是重命名为 app.
<appender name="applog" type="log4net.Appender.RollingFileAppender">
<file value="app.log" />
<staticLogFileName value="false" />
<datePattern value=".yyyy-MM-dd-hh-mm" />
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<maxSizeRollBackups value="5" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
问题是我在请求开始时看到以下内容:
- app.2016-02-01-05-00.log
到请求结束时,我有这些文件:
- app.2016-02-01-05-00.log
- app.2016-02-01-05-00.log.2016-02-01-05-00.log
请注意,分钟还没有翻转,但它似乎已经创建了某种翻转文件。此外,今天的文件从未像我想要的那样仅称为“app.log”,它总是以名称中的时间戳开头。最后,它似乎不符合我的maxSizeRollBackups 5,据我所知,备份会无限增长而不会被删除。
我尝试删除 staticLogFileName 标记,这使今天的名称“app.log”符合我的要求,但随后它会在原地滚动,覆盖自身而不创建备份文件。
【问题讨论】:
标签: asp.net-mvc asp.net-web-api log4net log4net-configuration log4net-appender