2016-12-06 3 views
0

Попытка настроить мой NLOG для архивирования файла журнала при достижении размера 200 МБ, но теперь с приведенной ниже конфигурацией он перезаписывает тот же файл, когда размер достигнут.Архивный журнал при достижении размера

<target name="debug-file" 
      xsi:type="File" 
      fileName="${basedir}/Log//log-debug-${date:format=yyyy-MM-dd}.txt" 
      layout="${pad:padding=5:inner=${level:uppercase=true}} ${date} ${pad:padding=2:inner=${threadid}} ${message} ${exception:format=tostring}" 
     archiveAboveSize="209715200" 
      archiveNumbering="Sequence" 
     concurrentWrites="true" 
      keepFileOpen="false" 
     archiveFileName="log-debug-{####}.txt" 

    /> 

Моя цель состоит в том, чтобы иметь несколько (по мере необходимости) файлов размером 200 МБ (или меньше) в тот же день.

ответ

1

Попробуйте архивировать старые файлы журналов в другой каталог, например, архивы.

Изменить archiveFileName атрибут некоторые вещи, как

archiveFileName="${basedir}/Log/archives/log-debug.{#####}.txt" 

Вот полный целевой узел

<target name="debug-file" 
      xsi:type="File" 
      fileName="${basedir}/Log/log-debug-${date:format=yyyy-MM-dd}.txt" 
      layout="${pad:padding=5:inner=${level:uppercase=true}} ${date} ${pad:padding=2:inner=${threadid}} ${message} ${exception:format=tostring}" 
     archiveAboveSize="209715200" 
      archiveNumbering="Sequence" 
     concurrentWrites="true" 
      keepFileOpen="false" 
     archiveFileName="${basedir}/Log/archives/log-debug.{#####}.txt" 

    /> 

Пожалуйста, обратите внимание на https://github.com/nlog/NLog/wiki/File-target#size-based-file-archival для получения более подробной информации.

+0

Это работает для меня, но все еще не понимаю, зачем нужен другой каталог? – Yuri

+0

У меня не было возможности попробовать, но можете ли вы проверить, что произойдет, если вы сохраните имя файла так же, как раньше fileName = "$ {basedir}/Log/log-debug - $ {date: format = yyyy-MM-dd} .txt ", но измените archiveFileName =" $ {basedir}/Log/log-debug. {#####}. txt ", чтобы узнать, были ли архивированные файлы созданы в одной папке? – Vinod

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