每个会话NLog

时间:2010-05-14 16:39:18

标签: nlog

有没有办法配置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>

由于

1 个答案:

答案 0 :(得分:2)

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

  <targets>
    <target name="FileTarget" xsi:type="File" fileName="MainLogFile.txt" layout="${longdate} ${callsite} ${level} ${message}" deleteOldFileOnStartup="true">
  </targets>