Files

84 lines
4.0 KiB
XML

<?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="Trace"
internalLogFile="D:\work\log.txt">-->
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
autoReload="true"
internalLogLevel="Info"
internalLogFile="c:\temp\nlog-internal.log">
<targets>
<!-- Log in a separate thread, possibly queueing up to messages. When the queue overflows, discard any extra messages-->
<!-- write logs to file -->
<target name="file" xsi:type="AsyncWrapper" queueLimit="5000" overflowAction="Discard">
<target xsi:type="File" fileName="${basedir}/logs/${shortdate}.log" layout="${longdate} [${level:uppercase=true}] [${event-context:item=Action}] ${message} [${event-context:item=Amount}][ ${stacktrace}]" />
</target>
<!-- write logs to file2 -->
<target name="file2" xsi:type="AsyncWrapper" queueLimit="5000" overflowAction="Discard">
<target xsi:type="File" fileName="${basedir}/logs/${shortdate}.log" layout="${longdate} [${level:uppercase=true}] : ${message}" />
</target>
<target name="file3" xsi:type="AsyncWrapper" queueLimit="5000" overflowAction="Discard">
<target xsi:type="File" fileName="${basedir}/EncoderLogs/${shortdate}.csv" layout="${longdate} [${level:uppercase=true}] : ${message} [${stacktrace}]" />
</target>
<!-- write logs to file4 -->
<target name="file4" xsi:type="AsyncWrapper" queueLimit="5000" overflowAction="Discard">
<target xsi:type="File" fileName="${basedir}/EncoderLogs/${shortdate}.csv" layout="${longdate},${message}" />
</target>
<!-- write log message to database -->
<target name="sqldb" xsi:type="Database" connectionString="Server=127.0.0.1;Database=SHENFUDB;User Id=sa;Password=HexagonPai=3.1415;">
<!--<connectionString>server=127.0.0.1;Database=SHENFUDB;user id=sa;password=HexagonPai=3.1415</connectionString>-->
<commandText>
INSERT INTO TLogInfo(LogTime,LogLevel,LogMessage,LogStackTrack) VALUES (@LogTime, @LogLevel, @LogMessage, @LogStackTrack);
</commandText>
<!-- database connection parameters -->
<parameter name="@LogTime" layout="${date}" />
<parameter name="@LogLevel" layout="${level:uppercase=true}" />
<parameter name="@LogMessage" layout="${message}" />
<!--<parameter name="@LogAction" layout="${event-context:item=Action}" />
<parameter name="@LogAmount" layout="${event-context:item=Amount}" />-->
<parameter name="@LogStackTrack" layout="${stacktrace}" />
</target>
<target name="sqldb2" xsi:type="Database" connectionString="Server=127.0.0.1;Database=SHENFUDB;uid=sa;pwd=HexagonPai=3.1415;">
<commandText>
insert into TLogInfo(LogTime,LogLevel,LogMessage,LogAction,LogAmount,LogStackTrack) values (@LogTime, @LogLevel, @LogMessage,@LogAction,@LogAmount, @LogStackTrack);
</commandText>
<!-- database connection parameters -->
<parameter name="@LogTime" layout="${date}" />
<parameter name="@LogLevel" layout="${level:uppercase=true}" />
<parameter name="@LogMessage" layout="${message}" />
<parameter name="@LogAction" layout="${event-context:item=Action}" />
<parameter name="@LogAmount" layout="${event-context:item=Amount}" />
<parameter name="@LogStackTrack" layout="${stacktrace}" />
</target>
<!--write log message to Visual Studio Output-->
<target name="debugger" xsi:type="Debugger" layout="NLog: ${date:format=HH\:mm\:ss} | ${level:uppercase=true:padding=-5} | ${message} [${stacktrace}]" />
</targets>
<rules>
<!--INFO,WARN,ERROR,FATAL-->
<!--<logger name="*" minlevel="Info" writeTo="sqldb2" />-->
<!--TRACE,DEBUG,INFO,WARN,ERROR,FATAL-->
<logger name="*" minlevel="Trace" writeTo="debugger" />
<!--DEBUG,INFO,WARN,ERROR,FATAL-->
<logger name="*" minlevel="Info" writeTo="file2" />
<!--DEBUG,INFO,WARN,ERROR,FATAL-->
<logger name="*" minlevel="Fatal" writeTo="file4" />
</rules>
</nlog>