目录
小编没有使用依赖注入的方式。
一、导入NuGet 包
---- log4net 基础包
---- Microsoft.Extensions.Logging.Log4Net.AspNetCore 扩展包
---- MySql.Data 数据库包
二、添加配置文件 log4net.config
需改数据库的字符串
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- 读取<log4not>节点 -->
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<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="Parame