2010-05-14 2 views
2

Есть ли способ настроить NLog для регистрации информации на сеанс приложения? На данный момент он добавляет сообщения в файл журнала каждый раз, когда приложение выполняется (WinForm). Нам бы хотелось только сохранить информацию о текущем сеансе. Это означает, что при запуске приложения все предыдущие сообщения очищаются до регистрации любого нового сообщения. Таким образом, только сообщения текущих сеансов будут доступны в файле журнала.NLog за сеанс

Вот текущая конфигурация

<?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> 

Благодаря

ответ

2

Предполагая, что вы можете иметь только один экземпляр приложения открытым на один раз, вы можете просто использовать параметр deleteOldFileOnStartup:

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

Eric, Спасибо за ответ. deleteOldFileOnStartup не работает. Он ничего не делал. –

+0

Это сработало. благодаря –

Смежные вопросы