NLog 配置文件允许你将日志分割成多个文件,并且可以设置每个文件的大小,以及保留的文件数量。以下是一个配置示例,它将日志文件分割为 .1
和 .2
扩展名的文件,并保留最多 5 个原始日志文件。
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
autoReload="true"
throwExceptions="false"
internalLogLevel="Off" internalLogFile="internal-nlog.txt">
<!-- 配置日志文件的目录 -->
<variable name="logDirectory" value="logs/"/>
<!-- 配置日志文件的规则 -->
<targets>
<target xsi:type="File" name="logfile" fileName="${logDirectory}/log.txt"
layout="${longdate} ${level:uppercase=true} ${message}"
maxArchiveFiles="5"
archiveAboveSize="10240"
archiveNumbering="Rolling"
archiveFileName="${logDirectory}/log.${date:format=yyyy-MM-dd}.#.txt">
<sizeLimit value="10240" />
</target>
</targets>
<!-- 配置日志规则 -->
<rules>
<logger name="*" minlevel="Debug" writeTo="logfile" />
</rules>
</nlog>
在这个配置中:
-
maxArchiveFiles="5"
表示最多保留 5 个原始日志文件。 -
archiveAboveSize="10240"
表示当单个日志文件超过 10KB 时,它将被归档。 -
archiveFileName
定义了归档文件的名称格式,其中#
是一个占位符,代表归档文件的序号。 -
archiveNumbering="Rolling"
表示当达到最大归档文件数或者归档文件超过指定大小时,旧的文件将被滚动重命名。
请根据你的具体需求调整文件大小限制和文件数量限制。
亲测有效!
C#
使用
private static readonly Logger logger = LogManager.GetCurrentClassLogger();
logger.Error(e.Message+e.StackTrace);