目录
一、引入 NuGet 包
log4net
Microsoft.Extensions.Logging.Log4Net.AspNetCore
MySql.Data ---- MySQL数据库需要
Newtonsoft.Json
Autofac
Autofac.Extensions.DependencyInjection
Autofac.Extras.DynamicProxy
二、配置log4net.config
注:当前网上有两种 log4net.config 配置文件, 一种是以<log4net>为根目录, 另一种以<configuration> 为根目录
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<!--正常日志:::记录正常日志-->
<!-- appender 定义日志输出方式 将日志以回滚文件的形式写到MySQL数据库中。-->
<appender name="ADONetAppender" type="log4net.Appender.ADONetAppender">
<!-- 代表缓存大小,在没达到缓存大小时,暂时不会存到数据库中, -->
<!-- 当程序关闭之后,会将未插入的信息加入到数据库中 -->
<bufferSize value="1" />
<!--引入《MySql.Data》包-->
<param name="ConnectionType" value="MySql.Data.MySqlClient.MySqlConnection, MySql.Data" />
<!--配置连接数据库的字符串-->
<param name="ConnectionString" value="server=localhost;database=TTTTT;uid=root;pwd=123456;"/>
<!--配置MySQL的插入语句-->
<param name="CommandText" value="insert into log4net(log_datetime,log_thread,log_level,log_logger,log_message)
values(@log_datetime, @log_thread , @log_level, @log_logger, @log_message)" />
<param name="Parameter">
<param name="ParameterName" value="@log_datetime" />
<param name="DbType" value="DateTime" />
<param name="Layout" type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy'-'MM'-'dd HH':'mm':'ss}" />
</param>
</param>
<param name="Parameter">
<param name="ParameterName" value="@log_thread" />
<param name="DbType" value="String" />
<param name="Size" value="255" />
<param name="Layout" type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%t" />
</param>
</param>
<param name="Parameter">
<param name="ParameterName" value="@log_level" />
<param name="DbType" value="String" />
<param name="Size" value="255" />
<param name="Layout" type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%p" />
</param>
</param>
<param name="Parameter">
<param name="ParameterName" value="@log_logger" />
<param name="DbType" value="String" />
<param name="Size" value="255" />
<param name="Layout" type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%c" />
</param>
&l