天天看点

NLog rolling fileFileTarget Archive ExamplesMost useful NLog configurations [closed]

Archive old log files

NLog 4.5 makes it easy to setup archive logic to move/cleanup old files with dynamic fileName-Layout. You just need to configure

maxArchiveFiles

and it will automatically perform cleanup.

<?xml version="1.0" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
    <targets>
        <target name="file" xsi:type="File"
            layout="${longdate} ${logger} ${message}${exception:format=ToString}" 
            fileName="${basedir}/logs/AppLog.${shortdate}.txt" 
            maxArchiveFiles="4"
            archiveAboveSize="10240" />
    </targets>
 
    <rules>
        <logger name="*" minlevel="Debug" writeTo="file" />
    </rules>
</nlog>      

NLog 4.7 (and newer) adds support for the option

MaxArchiveDays

. It works like

MaxArchiveFiles

but instead inspect the timestamp of the files in the archive. They can be combined. Ex.

maxArchiveDays="30" maxArchiveFiles="90"

(Deletes files older than 30 days or if more than 90 files in archive).

If using NLog older than ver. 4.5 (or have very special needs), then also see FileTarget-Archive-Examples

用archiveAboveSize进行处理的话,流程是

1.默认error.log

2.第一次rolling,把error.log重命名为error.1.log,新建error.log

3.第二次rolling,把error.log重命名为error2.log,新建error.log

数字越大的archive,是most recently

FileTarget Archive Examples

NLog ver. 4.5 makes it very easy to perform archive of old files.

But there are many archival options, which allows one to configure the archive logic even further. This can be needed if using NLog older than ver. 4.5.

Most useful NLog configurations [closed]

Tell NLog to watch and automatically reload the configuration if it changes:

<nlog autoReload="true" />           

maxArchiveFiles - Maximum number of archive files that should be kept. If maxArchiveFiles is less or equal to 0, old files aren't deleted Integer Default: 0