Configure for NLOG

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true">
  <targets async="true">
    <target name="console" xsi:type="ColoredConsole" layout="${date:format=HH\:mm\:ss} [ThreadId ${threadid:padding=2}] ${logger:shortName=true:padding=25} : ${message} ${exception:format=message}" />
    <target name="viewer" xsi:type="Chainsaw" address="udp://localhost:8071" />
    <target name="prox" xsi:type="xxxprox" application="xxxxServer"/>
    <target name="eventlog" xsi:type="EventLog" log="xxx Log" source="xxxServer" layout="[ThreadId ${threadid}] ${logger:shortName=true}: ${message} ${exception:format=tostring}"/>
 <target name="testfile" xsi:type="File" fileName="c:\perftest.txt" layout="${date:format=HH\:mm\:ss.fff} ${logger:shortName=true:padding=25} : ${message} ${exception:format=message}" />
  </targets>
  <rules>
    <logger name="*" minlevel="Info" writeTo="prox,eventlog" />
    <logger name="*" writeTo="viewer" />
    <logger name="*" levels="Fatal,Error,Info,Warn,Trace" writeTo="console" />
    <logger name="*" writeTo="testfile" />
  </rules>
</nlog>

for detail async configure, 
<targets>
  <target xsi:type="AsyncWrapper"
          name="String"
          queueLimit="Integer"
          timeToSleepBetweenBatches="Integer"
          batchSize="Integer"
          overflowAction="Enum">
    <target xsi:type="wrappedTargetType" ...target properties... />
  </target>
</targets>
queueLimit - Limit on the number of requests in the lazy writer thread request queue. Integer Default: 10000
timeToSleepBetweenBatches - Time in milliseconds to sleep between batches. Integer Default: 50
batchSize - Number of log events that should be processed in a batch by the lazy writer thread. Integer Default: 100
overflowAction - Action to be taken when the lazy writer thread request queue count exceeds the set limit. Default: Discard
 Possible values: 
•Block - Block until there's more room in the queue. 
This parameter is not supported in: 
NLog v1.0 for .NET Compact Framework 1.0
 NLog v1.0 for .NET Compact Framework 2.0
 NLog v2.0 for .NET Compact Framework 2.0
 NLog v2.0 for .NET Compact Framework 3.5
•Discard - Discard the overflowing item.
•Grow - Grow the queue.

you can refer:
https://github.com/nlog/NLog/wiki/AsyncWrapper-target

  

posted on 2013-12-06 15:40  子虚乌有  阅读(501)  评论(0)    收藏  举报