<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      autoReload="true"
      internalLogLevel="Info"
      throwExceptions="true"
      internalLogToConsole="true"
      internalLogToConsoleError="true">
  <extensions>
    <add assembly="NzbDrone.Core"/>
    <add assembly="NzbDrone.Common"/>
  </extensions>
  <targets>
    <target xsi:type="ColoredConsole" name="consoleLogger" layout="[${level}] ${logger}: ${message} ${onexception:inner=${newline}${newline}${exception:format=ToString}${newline}}"/>
    <target xsi:type="NLogViewer" name="udpTarget" address="udp://127.0.0.1:20480" includeCallSite="true" includeSourceInfo="true" includeNLogData="true" includeNdc="true">
      <parameter>
        <name>Exception</name>
        <layout>${exception:format=ToString}</layout>
      </parameter>
    </target>
    <target xsi:type="File" name="rollingFileLogger" fileName="${appLog}" autoFlush="true" keepFileOpen="false"
           concurrentWrites="false" concurrentWriteAttemptDelay="50" concurrentWriteAttempts ="10"
            archiveAboveSize="1024000" maxArchiveFiles="5" enableFileDelete="true" archiveNumbering ="Rolling"
            layout="${date:format=yy-M-d HH\:mm\:ss.f}|${level}|${logger}|${message}${onexception:inner=${newline}${newline}${exception:format=ToString}${newline}}"/>
  </targets>
  <rules>
    <logger name="*" minlevel="Trace" writeTo="consoleLogger"/>
    <logger name="*" minlevel="Off" writeTo="udpTarget"/>
    <logger name="*" minlevel="Info" writeTo="rollingFileLogger"/>
  </rules>
</nlog>