C# log4net,一周中每天一个日志文件

C# log4net, one log file per day of the week

我想将 log4net 用于我的日志记录过程。 但是我找不到一个配置文件,它可以根据一周的 天来写入日志。 例如,今天是星期五,我希望它在 "friday.log" 文件上写入日志。 一旦它创建了整整 1 周的日志,它必须返回 "monday.log" 并从 0.

覆盖它

谢谢。

编辑: 我想更准确地避免错误的回应。我的问题很糟糕,而且不是很准确。 我想要 7 个日志文件:星期一、星期二、星期三、星期四、星期五、星期六和星期日。 log4net 必须找到一周中的好日子并将其记录到其中。 一周后,又到了星期一,log4net 必须删除所有当前日志并在星期一的文件中重新开始记录。

我希望它现在更准确了。

谢谢

这将创建一个文件Friday.log(今天,9 月 18 日)

<file type="log4net.Util.PatternString">
<conversionPattern value="%date{dddd}.log" />
</file>

大锤方法...

从 RollingFileAppender 派生一个 class 并覆盖 AdjustFileBeforeAppend 方法。在您的覆盖中,您可以在即将创建本周一的日志文件时完成删除上周一的日志文件的讨厌任务。

您应该能够通过配置生成您想要的文件名。 (参见 rbm 的回答。)