2016-05-23 10 views
1

Я видел множество примеров использования API конфигурации NLog для создания нескольких целей, связанных с несколькими правилами. Однако я не могу найти документацию о том, как использовать API конфигурации NLog, чтобы настроить цель оболочки вокруг другой цели. Это конфигурация, которую я пытаюсь создать программно с API:Как использовать API конфигурации NLog для определения целевой оболочки?

<targets> 
    <target xsi:type="BufferingWrapper" 
     name="InfoBufferingTarget" 
     bufferSize="100" 
     flushTimeout="60000" 
     slidingTimeout="true"> 

     <target xsi:type="File" 
      name="InfoFileTarget" 
      fileName="nlog.log" 
      layout="${message}" 
      keepFileOpen="true" 
      openFileCacheSize="10" 
      bufferSize="327680" 
      networkWrites="true" 
      createDirs="true" 
      /> 
    </target> 
</targets> 

<rules> 
    <logger name="*" minlevel="Info" writeTo="InfoBufferingTarget" /> 
</rules> 

Я получил код работает только с целевым файлом, но точно не знают, как добавить буферную оболочку.

Спасибо за любую помощь.

ответ

1

Это то, что я использую в моей ASP.Net ядра приложения:

loggerFactory.AddNLog(); 
var configuration = LogManager.Configuration; 

var target = new FileTarget { 
    Name = "log", 
    FileName = "logs/logging.log", 
    Layout = "${longdate}|${eventproperties:item=EventId.Id}|${logger}|${uppercase:${level}}| ${message} ${exception}", 
    ArchiveEvery = FileArchivePeriod.Day 
} 

var wrappedTarget = new AsyncTargetWrapper { 
    Name = "wrappedTarget", 
    WrappedTarget = target 
}; 

configuration.AddTarget(wrappedTarget); 

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

  • Нет связанных вопросов^_^