<?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="false"
      internalLogToConsoleError="true"
      internalLogFile="nlog.txt">
  <extensions>
    <add assembly="Exceptron.NLog"/>
    <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="nzbdrone.log.txt" autoFlush="true" keepFileOpen="false"
           concurrentWrites="false" concurrentWriteAttemptDelay="50" concurrentWriteAttempts ="10"
            archiveAboveSize="512000" maxArchiveFiles="1" enableFileDelete="true" archiveNumbering ="Rolling"
            layout="${date:format=yy-M-d HH\:mm\:ss.f}|${logger}}|${level}|${message}|${exception:format=ToString}"/>
    <target xsi:type="Exceptron" name="exceptronTarget" ApiKey="CB230C312E5C4FF38B4FB9644B05E60G" ApplicationVersion="${version}" />
  </targets>
  <rules>
    <logger name="*" minlevel="Debug" writeTo="consoleLogger"/>
    <logger name="*" minlevel="Trace" writeTo="udpTarget"/>
    <logger name="*" minlevel="Trace" writeTo="rollingFileLogger"/>
    <logger name="*" minlevel="Trace" writeTo="exceptronTarget"/>
  </rules>
</nlog>