log4net写入mysql_C# 使用Log4net记录文件日志和数据库日志使用方法(附源代码)...

这篇博客介绍了如何在C#应用程序中使用log4net库来记录日志,包括设置XML配置文件以实现日志滚动存储和将日志写入MySQL数据库。配置内容包括定义文件日志appender和数据库日志appender,并提供了相应的SQL语句创建日志表。
摘要由CSDN通过智能技术生成

<?xml version="1.0" encoding="utf-8"?>

<!--

有关如何配置 ASP.NET 应用程序的详细信息,请访问

http://go.microsoft.com/fwlink/?LinkId=169433

-->

<configuration>

<configSections>

<section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>

</configSections>

<system.web>

<compilation debug="true" targetFramework="4.0" />

</system.web>

<log4net>

<!--定义输出到文件中-->

<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">

<!--定义文件存放位置-->

<file value="log\\"/>

<appendToFile value="true"/>

<rollingStyle value="Date"/>

<datePattern value="yyyy\\yyyyMM\\yyyyMMdd'.txt'"/>

<staticLogFileName value="false"/>

<param name="MaxSizeRollBackups" value="1000"/>

<layout type="log4net.Layout.PatternLayout">

<!--输出格式-->

<conversionPattern value="%newline %n记录时间:%date %n线程ID:[%thread] %n日志级别:%-5level %n出错类:%logger property: [%property{NDC}] - %n错误描述:%message%newline"/>

</layout>

</appender>

<!--定义输出到SQL Server数据库中-->

<!--

在SQL Server中创建表的SQL语句

CREATE TABLE [dbo].[Log] (

[Id] [int] IDENTITY (1, 1) NOT NULL,

[Date] [datetime] NOT NULL,

[Thread] [varchar] (255) NOT NULL,

[Level] [varchar] (50) NOT NULL,

[Logger] [varchar] (255) NOT NULL,

[Message] [varchar] (4000) NOT NULL,

[Exception] [varchar] (2000) NULL

);

-->

<appender name="AdoNetAppenderSQLServer" type="log4net.Appender.AdoNetAppender">

<bufferSize value="1" />

<connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />

<connectionString value="Data Source=Sc-201503031243\SQLEXPRESS;Initial Catalog=RoleDemo;Persist Security Info=True;User ID=sa;Password=123;" />

<commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />

<parameter>

<parameterName value="@log_date" />

<dbType value="DateTime" />

<layout type="log4net.Layout.RawTimeStampLayout" />

</parameter>

<parameter>

<parameterName value="@thread" />

<dbType value="String" />

<size value="255" />

<layout type="log4net.Layout.PatternLayout">

<conversionPattern value="%thread" />

</layout>

</parameter>

<parameter>

<parameterName value="@log_level" />

<dbType value="String" />

<size value="50" />

<layout type="log4net.Layout.PatternLayout">

<conversionPattern value="%level" />

</layout>

</parameter>

<parameter>

<parameterName value="@logger" />

<dbType value="String" />

<size value="255" />

<layout type="log4net.Layout.PatternLayout">

<conversionPattern value="%logger" />

</layout>

</parameter>

<parameter>

<parameterName value="@message" />

<dbType value="String" />

<size value="4000" />

<layout type="log4net.Layout.PatternLayout">

<conversionPattern value="%message" />

</layout>

</parameter>

<parameter>

<parameterName value="@exception" />

<dbType value="String" />

<size value="2000" />

<layout type="log4net.Layout.ExceptionLayout" />

</parameter>

</appender>

<root>

<level value="ALL" />

<!--文件形式记录日志-->

<appender-ref ref="RollingLogFileAppender"/>-->

<!--SQL Server数据库形式记录日志-->

<appender-ref ref="AdoNetAppenderSQLServer"/>

</root>

</log4net>

</configuration>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值