NLog 2.0.1 每日归档日志文件
Posted
技术标签:
【中文标题】NLog 2.0.1 每日归档日志文件【英文标题】:NLog 2.0.1 Daily Archiving of log files 【发布时间】: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,一切正常。 【参考方案1】:我在尝试寻找类似问题的解决方案时偶然发现了这一点。我知道现在回答有点晚了,但也许它会帮助别人。
我认为问题在于您将归档设置为每天,但您还使用日期命名了日志。
这意味着每天都会创建一个新日志,因此当前日志永远不会超过一天,这意味着永远不会有任何要归档的内容。
如果您更改日志名称,它应该可以工作,或者您可以将归档间隔更改为更短的时间,例如小时
【讨论】:
以上是关于NLog 2.0.1 每日归档日志文件的主要内容,如果未能解决你的问题,请参考以下文章