我遇到 Nlog 未将日志写入配置文件中提到的文件夹的问题。这是我们为 Windows 服务实现的。每当我们启动一项服务时,它都会写入几天/几小时的日志。但突然间它停止写入日志。我们再次需要重新启动服务来解决问题,并且问题再次重复。
请在下面找到 nlog 配置文件,非常感谢任何解决问题的帮助。
<?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">
<targets async="true">
<target name="ApplicationLog" xsi:type="File" layout="<LogEntry><Date>${longdate}</Date><Level>${level}</Level><Message>${message}</Message><StackDump>${stacktrace}</StackDump><Exception>${exception:format=ToString}</Exception></LogEntry>" fileName="D:\ApplicationLogs\Account\account.txt" encoding="iso-8859-2" archiveFileName="D:\ApplicationLogs\Account\Archive\account.{########}.txt" archiveNumbering="Rolling" archiveEvery="Day" archiveAboveSize="20971520" maxArchiveFiles="60" />
<target name="securityLog" xsi:type="File" layout="<LogEntry><Date>${longdate}</Date><Level>${level}</Level><Message>${message}</Message><StackDump>${stacktrace}</StackDump><Exception>${exception:format=ToString}</Exception></LogEntry>" fileName="D:\ApplicationLogs\Account\securityLog.txt" encoding="iso-8859-2" archiveFileName="D:\ApplicationLogs\Account\Archive\securityLog.{########}.txt" archiveNumbering="Rolling" archiveEvery="Day" archiveAboveSize="20971520" maxArchiveFiles="60" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="securityLog" />
<logger name="*" minlevel="Info" writeTo="ApplicationLog" />
</rules>
</nlog>
谢谢
同样,升级后开始 NLog.Web.AspNetCore 4.9.3 至 5.3.5 日志文件通过 cron 任务轮换