如何强制NLog覆盖日志文件

Vad*_*dim 13 .net nlog overwrite

重启应用程序时,我需要NLog覆盖日志文件.目前它附加到现有文件.例如,我在NLog.config中有这样的东西

<targets>
  <target xsi:type="File" name="fileLog" 
          fileName="${longdate}.log" layout="${message}" />
</targets>
Run Code Online (Sandbox Code Playgroud)

如果我能够添加到<target>这样的东西,那将是很好的append="false",而不是附加到现有的日志,它将覆盖.

bur*_*ION 20

替换您的配置部分

<targets>
  <target xsi:type="File" name="fileLog" 
          fileName="${longdate}.log" layout="${message}" deleteOldFileOnStartup="true"/>
</targets>
Run Code Online (Sandbox Code Playgroud)

  • 仅当“FileName”参数表示单个文件时,deleteOldFileOnStartup 才有效。就我而言,它是 fileNmae="${longdate}.log"。在这种情况下是行不通的。但是,对于我的应用程序。我可以更改日志文件的名称,这个解决方案对我有用。加1,我会接受你的答案。 (2认同)