如何配置NLog日志轮转:保留7天日志后每周日归档?
NLog配置实现每日日志轮转并保留7天后归档
完全可以通过调整NLog配置实现每日生成日志、保留7天后自动归档的需求,针对你当前的配置,需要修改以下几个关键参数:
- 将
archiveEvery从Sunday改为Day,确保每天触发一次归档 - 将
maxArchiveDays从28改为7,设置日志保留时长为7天 - 将
archiveNumbering从Rolling改为Date,配合archiveDateFormat让归档文件名带上具体日期,更易识别 - 调整
archiveFileName的命名格式,让日期标识更直观
修改后的完整配置如下:
<target xsi:type="File" name="error" layout="${longdate} ${uppercase:${level}}: - ${message}" fileName="${basedir}/logs/Error.log" archiveFileName="${basedir}/logs/archive/Error_{#}.zip" archiveNumbering="Date" enableArchiveFileCompression="true" archiveEvery="Day" archiveAboveSize="10000000" maxArchiveDays="7" archiveDateFormat="yyyy-MM-dd" concurrentWrites="false"/>
关键参数说明:
archiveEvery="Day":每天自动归档当前的Error.log文件maxArchiveDays="7":系统会自动删除超过7天的归档日志文件archiveNumbering="Date":使用日期作为归档文件的编号,结合archiveDateFormat生成类似Error_2024-05-20.zip的文件名enableArchiveFileCompression="true":归档时自动将日志文件压缩为zip格式,节省磁盘空间archiveAboveSize="10000000":保留按大小归档的逻辑,如果单日志文件超过10MB也会触发归档(如果不需要按大小归档可删除此参数)
内容的提问来源于stack exchange,提问作者PsyOrc
相关产品推荐
相关产品推荐

