2025-06-23 13:42:02 +08:00
|
|
|
<?xml version="1.0" encoding="utf-8" ?>
|
2025-06-23 17:01:06 +08:00
|
|
|
<nlog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
|
|
|
xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
|
|
|
|
|
autoReload="true"
|
|
|
|
|
internalLogLevel="Info"
|
|
|
|
|
internalLogFile="internal-nlog.txt">
|
2025-06-23 13:42:02 +08:00
|
|
|
|
2025-06-23 17:01:06 +08:00
|
|
|
<targets>
|
|
|
|
|
<!-- 文件日志 -->
|
|
|
|
|
<target name="logfile"
|
|
|
|
|
xsi:type="File"
|
|
|
|
|
fileName="logs/${shortdate}.log"
|
2025-07-06 14:20:56 +08:00
|
|
|
layout="${longdate} ThreadID=${threadid} ${level:uppercase=true} ${logger} ${mdlc:CallerFilePath} ${mdlc:CallerLineNumber:whenEmpty=0} ${mdlc:CallerMember} ${message} ${exception:format=tostring}"
|
2025-06-23 17:01:06 +08:00
|
|
|
archiveFileName="logs/archives/{#}.log"
|
|
|
|
|
archiveEvery="Day"
|
|
|
|
|
archiveNumbering="Rolling"
|
|
|
|
|
maxArchiveFiles="30"/>
|
2025-06-23 13:42:02 +08:00
|
|
|
|
2025-06-23 17:01:06 +08:00
|
|
|
<!-- 控制台日志 -->
|
|
|
|
|
<target name="logconsole"
|
|
|
|
|
xsi:type="Console"
|
2025-07-06 14:20:56 +08:00
|
|
|
layout="${date:format=HH\:mm\:ss} ${level} ${message}${exception:format=tostring}"/>
|
2025-06-23 17:01:06 +08:00
|
|
|
<!-- SQL Server 目标 -->
|
|
|
|
|
<!-- 异步写入日志到数据库 -->
|
2025-06-23 13:42:02 +08:00
|
|
|
|
2025-06-23 17:01:06 +08:00
|
|
|
<target name="database"
|
|
|
|
|
xsi:type="Database"
|
|
|
|
|
dbProvider="MySql.Data.MySqlClient.MySqlConnection, MySql.Data"
|
|
|
|
|
connectionString="server=127.0.0.1;port=3306;user=root;password=Pgw15221236646; database=pmswpf; ">
|
|
|
|
|
<commandText>
|
|
|
|
|
INSERT INTO nlog (
|
|
|
|
|
LogTime, Level, ThreadID,ThreadName,Callsite,CallsiteLineNumber,Message,
|
2025-07-06 14:20:56 +08:00
|
|
|
Logger, Exception, CallerFilePath, CallerLineNumber,CallerMember
|
2025-06-23 17:01:06 +08:00
|
|
|
) VALUES (
|
|
|
|
|
@LogTime, @Level,@ThreadID,@ThreadName,@Callsite,@CallsiteLineNumber,@Message,
|
2025-07-06 14:20:56 +08:00
|
|
|
@Logger, @Exception, @CallerFilePath, @CallerLineNumber,@CallerMember
|
2025-06-23 17:01:06 +08:00
|
|
|
)
|
|
|
|
|
</commandText>
|
2025-06-23 13:42:02 +08:00
|
|
|
|
2025-06-23 17:01:06 +08:00
|
|
|
<!-- 参数映射 -->
|
|
|
|
|
<parameter name="@LogTime" layout="${date:format=yyyy-MM-dd HH\:mm\:ss}"/>
|
|
|
|
|
<parameter name="@Level" layout="${level}"/>
|
|
|
|
|
<parameter name="@ThreadID" layout="${threadid}" dbType="Int32"/>
|
|
|
|
|
<parameter name="@ThreadName" layout="${threadname}"/>
|
|
|
|
|
<parameter name="@Message" layout="${message}"/>
|
|
|
|
|
<parameter name="@Callsite" layout="${callsite}"/>
|
|
|
|
|
<parameter name="@Logger" layout="${logger}"/>
|
|
|
|
|
<parameter name="@Exception" layout="${exception:format=ToString}"/>
|
2025-07-06 14:20:56 +08:00
|
|
|
<parameter name="@CallsiteLineNumber" layout="${callsite-linenumber:whenEmpty=0}"/>
|
|
|
|
|
<parameter name="@CallerFilePath" layout="${mdlc:CallerFilePath}"/>
|
|
|
|
|
<parameter name="@CallerLineNumber" layout="${mdlc:CallerLineNumber:whenEmpty=0}"/>
|
|
|
|
|
<parameter name="@CallerMember" layout="${mdlc:CallerMember}"/>
|
2025-06-23 13:42:02 +08:00
|
|
|
|
2025-06-23 17:01:06 +08:00
|
|
|
</target>
|
|
|
|
|
</targets>
|
2025-06-23 13:42:02 +08:00
|
|
|
|
2025-06-23 17:01:06 +08:00
|
|
|
<rules>
|
|
|
|
|
<logger name="*" minlevel="Trace" writeTo="logconsole"/>
|
|
|
|
|
<logger name="*" minlevel="Info" writeTo="logfile"/>
|
|
|
|
|
<!-- 路由日志到数据库 -->
|
|
|
|
|
<logger name="*" minlevel="Info" writeTo="database"/>
|
|
|
|
|
</rules>
|
2025-06-23 13:42:02 +08:00
|
|
|
</nlog>
|