2

有什么方法可以配置 NLog 以记录每个应用程序会话的信息?到目前为止,每次执行应用程序时它都会在日志文件中附加消息(WinForm)。我们想要的是只存储当前会话的信息。这意味着当应用程序启动时,所有以前的消息都会在记录任何新消息之前被清除。这样,日志文件中只有当前会话的消息可用。

这是当前配置

 <?xml version="1.0"?>
<nlog autoReload="true" xmlns="http://www.nlog-project.org/schemas/NLog.xsd"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <targets>
    <target name="FileTarget" xsi:type="File" fileName="MainLogFile.txt" layout="${longdate} ${callsite} ${level} ${message}"/>/>
  </targets>
  <rules>
    <logger name="*" levels="Trace,Info,Warn,Error,Debug,Fatal" writeTo="FileTarget"/>
  </rules>
</nlog>

谢谢

4

1 回答 1

2

假设您一次只能打开一个应用程序实例,您可以使用 deleteOldFileOnStartup 参数:

  <targets>
    <target name="FileTarget" xsi:type="File" fileName="MainLogFile.txt" layout="${longdate} ${callsite} ${level} ${message}" deleteOldFileOnStartup="true">
  </targets>
于 2010-05-14T16:58:52.010 回答