Log4net简单配置使用

本文介绍如何在项目中配置并使用log4net进行日志记录。包括引用log4net.dll,配置log4net.config文件,创建日志类,以及通过不同Appender将日志输出到文件或数据库。

1项目中引用程序集log4net.dll

2往项目Properties 中的 AssemlyInfo.cs添加一行

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)] ,即指明log4net的配置文件

3添加日志类

 1 /// <summary>
 2 /// 日志记录文件
 3 /// </summary>
 4 public class Logger
 5 {
 6 private static log4net.ILog log = null;
 7 private static log4net.ILog logDB = null;
 8 private static object lockHelper = new object();
 9 public static log4net.ILog Log
10 {
11 get {
12 if (log == null)
13 {
14 lock (lockHelper)
15 {
16 log = log4net.LogManager.GetLogger("MyLogger");
17 }
18 }
19 return log;
20 }
21 }
22 public static log4net.ILog LogDB
23 {
24 get
25 {
26 if (logDB == null)
27 {
28 lock (lockHelper)
29 {
30 logDB = log4net.LogManager.GetLogger("ADONetAppender");
31 }
32 }
33 return logDB;
34 }
35 }
36 
37 public static void LogInfo(string msg)
38 {
39 Log.Info(msg);
40 }
41 }
View Code

4外层项目添加配置文件log4net.config,设置文件属性

”log4Net配置文件属性药设置成 始终复制“
 1 <?xml version="1.0" encoding="utf-8" ?>
 2 <configuration>
 3   <log4net>
 4     <root>
 5       <!--<level value="ALL" />
 6       <appender-ref ref="LogFileAppender" />-->
 7     </root>
 8     <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" >
 9       <param name="File" value="Log.txt" />
10       <param name="AppendToFile" value="true" />
11       <layout type="log4net.Layout.PatternLayout">
12         <param name="ConversionPattern" value="%d [%t] %c %-5p %logger - %m%n" />
13       </layout>
14     </appender>
15     <appender name="ADONetAppender" type="log4net.Appender.AdoNetAppender">
16       <bufferSize value="1"/>
17       <connectionType value="System.Data.SqlClient.SqlConnection,System.Data,Version=1.0.5000.0,Culture=neutral"></connectionType>
18       <connectionString value=""></connectionString><!--此处省略数据库配置连接-->
19       <commandText value="insert into web_log(DateTime,message)values(@dateTime,@message)"></commandText>
20       <parameter>
21         <parameterName value="@dateTime"/>
22         <dbType value="DateTime"/>
23         <layout type ="log4net.Layout.RawTimeStampLayout"/>
24       </parameter>
25       <parameter>
26         <parameter value="@message"/>
27         <dbType value="String"/>
28         <size value="3000"/>
29         <layout type="log4net.Layout.PatternLayout">
30           <conversionPattern value="%m"/>
31         </layout>
32       </parameter>
33     </appender>
34     <logger name ="MyLogger">
35       <level value="ALL"></level>
36       <appender-ref ref="LogFileAppender"></appender-ref>
37     </logger>
38     <logger name ="MyDBLogger">
39       <level value="ALL"></level>
40       <appender-ref ref="ADONetAppender"></appender-ref>
41     </logger>
42   </log4net>
43 </configuration>
View Code

5使用

Logger.Log.Error("处理放生异常",e);

Logger.Log.Info("日志",e);

转载于:https://www.cnblogs.com/silence2013/p/3182200.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值