Log4Net学习 记录操作日志

  到http://logging.apache.org/官方下载最新版,里面有帮组文档和案例程序,为了能在项目中使用,我们需要把log4net.dll加到项目中去。

log4net配置文件
1 <?xml version="1.0" encoding="utf-8" ?>
2  <log4net>
3 <!--定义输出到文件中-->
4 <appender name="LogFileAppender" type="log4net.Appender.FileAppender">
5 <!--定义文件存放位置 不指定目录就是保存在项目的根目录下-->
6 <file value="log4dao.txt" />
7 <!--是否覆盖,默认是追加true-->
8 <appendToFile value="true" />
9 <rollingStyle value="Date" />
10 <datePattern value="yyyyMMdd-HH:mm:ss" />
11 <layout type="log4net.Layout.PatternLayout">
12 <!--每条日志末尾的文字说明-->
13 <footer value="by xqh" />
14 <!--输出格式-->
15 <conversionPattern value="记录时间:%date 日志级别:%-5level 操作类:%logger - 操作状态:%message%newline" />
16 </layout>
17 </appender>
18
19 <root>
20 <!--<level value="WARN" />-->
21 <!--文件形式记录日志-->
22 <appender-ref ref="LogFileAppender" />
23 <!--控制台控制显示日志-->
24 <!--<appender-ref ref="ConsoleAppender" />-->
25 <!--Windows事件日志-->
26 <!--<appender-ref ref="EventLogAppender" />-->
27 <!-- 记录到数据库 -->
28 <!--<appender-ref ref="AdoNetAppender_SqlServer" />-->
29 </root>
30
31  </log4net>

  关于配置文件有两种方式,一种是用自带的web.config或app.config,另一种就是自定义的配置文件,在这里我选择自定义的(个人爱好,没有原因)。

  对于log4net的日志详细说明请参考http://www.cnblogs.com/dragon/archive/2005/03/24/124254.html,在这里要感谢这篇文章的作者写的那么详细。

  现在开始在项目中使用log4net,项目采用我自己的spring.net里的项目。

  目的 要在BLL中使用日志功能

  第一 在BLL的程序集里添加下面代码

View Code
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4Net/log4_dal.xml",
ConfigFileExtension = "txt", Watch = true)]

  第二 在构造函数中实现ILog接口

BLL Code
1 ILog log = null;
2 //UserService userService1 = null;
3
4 public UserBLL()
5 {
6 //在容器里拿到UserService实例对象 同时把相应的属性注入
7 userService = (IUserService)ctx.GetObject("exampleService");
8 //userService1 = (UserService)ctx.GetObject("UserService");
9 log = LogManager.GetLogger(typeof(UserBLL));
10 }

  第三 在具体业务中使用

BLL
1 /// <summary>
2 /// 添加用户
3 /// </summary>
4 /// <param name="user"></param>
5 public User AddUser(User user)
6 {
7 string msg = string.Empty;
8 User u = userService.AddUser(user);
9
10 if (u != null)
11 msg = "添加用户成功";
12 else
13 msg = "添加用户失败";
14 log.Info(msg);
15 return u;
16 }

  结果

  一个简单的日志就完成了。

  欢迎大家交流!

原文地址:https://www.cnblogs.com/xqhppt/p/1959875.html