【发布时间】:2015-08-25 09:30:12
【问题描述】:
我一直在努力让我的日志记录正常工作,以便我可以将每日日志存档 2 周。
通过查看官方文档和this question,我已将以下内容添加到我的 NLog.config 文件目标中
<target name="file"
xsi:type="File"
fileName="${basedir}/../logs/${shortdate}.log"
archiveFileName="${basedir}/../logs/archive/archive.${shortdate}.{#}.txt"
archiveEvery="Day"
archiveNumbering="Rolling"
maxArchiveFiles="14" />
我的理解是,这应该在检测到新的一天时,在存档文件夹中创建 archive.${shortdate}.{#}.txt 文件。
我实际看到的是,预期的每一天都会生成一个新的日志文件,但从未发生存档。
我是不是配置错了,或者你需要做些不同的事情才能让它与 NLog 2.0.1 一起工作
请注意,我只是手动更改了计算机的日期设置,我正在测试这个,尽管我已经让它运行了一夜,但仍然没有任何存档。
编辑: 如果我根据文件大小将目标更改为存档,我已经能够进行一些存档工作,如下所示:
<target name="file"
xsi:type="File"
fileName="${basedir}/../logs/${shortdate}.log"
archiveFileName="${basedir}/../logs/archive/archive.${shortdate}.{#}.txt"
archiveAboveSize="51200"
archiveNumbering="Rolling"
maxArchiveFiles="14" />
所以在归档当天似乎有问题
【问题讨论】:
-
修复了很多关于文件归档的错误。 4.0 已经发布了几个星期,4.1 RC 也在 nuget 上。 NLog 2.0 是从 2011 年开始的。你应该在升级后检查一下。
-
我的经历与@Julian 描述的一样。 2.* 归档有问题。我今天升级到 4.2.3,一切正常。