gpt4 book ai didi

log4net - 如何使用复合命名的滚动备份配置静态日志文件名

转载 作者:行者123 更新时间:2023-12-01 22:56:28 25 4
gpt4 key购买 nike

我使用了此配置,但日期始终添加到当前文件中(“log.20130805.0.log”)。

<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="Logs/logFile.log" />
<appendToFile value="true" />
<preserveLogFileNameExtension value="true" />
<rollingStyle value="Composite" />
<datePattern value=".yyyyMMdd" />
<maximumFileSize value="10MB" />
<countDirection value="1"/>
<maxSizeRollBackups value="-1" />
<staticLogFileName value="false" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>

该配置的结果是:

log.20130805.0.log
log.20130805.1.log
log.20130805.2.log
log.20130805.3.log

我通过 staticLogFileName = true 得到的是:

log.log
log.1.log
log.2.log
log.3.log

我想要的是:

log.log
log.20130805.1.log
log.20130805.2.log
log.20130805.3.log

最佳答案

我知道我迟到了,但我相信我已经弄清楚如何正确使用复合 RollingFileAppender。我将其发布在这里供后代使用,以防有人在搜索中偶然发现此内容:

<appender name="rollingfileappender" type="log4net.Appender.RollingFileAppender">
<file value="C:\Logs\logfile.log" />
<datePattern value=".yyyyMMdd" />
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="100Kb" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.DynamicPatternLayout">
<conversionPattern value="%[level] - %date - %message" />
</layout>
</appender>

这里的关键是:

<preserveLogFileNameExtension value="true" /><staticLogFileName value="true" />

附加当前日志文件时,您将看到:

logfile.log
logfile.1.log
logfile.2.log
etc...

一旦新的一天到来,这些应该重命名为:

logfile.20200623.log
logfile.20200623.1.log
logfile.20200623.2.log
etc...

您将拥有一个新的 logfile.log,仍然捕获当前日志。

关于log4net - 如何使用复合命名的滚动备份配置静态日志文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18063073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com