log4net日志记录,配置使用步骤

1.官网下载 http://logging.apache.org/log4net/download.html压缩包

2.添加解压包下面的bin→net→4.0→release的dll的引用

3.创建一个log4net.config内容如下

<?xml version="1.0" encoding="utf-8" ?>
<log4net debug="false">
  <root>
    <level value="ALL"/>
    <appender-ref ref="LogFileAppender"/>
    <appender-ref ref="ErrorFileAppender"/>
  </root>
  <!--记录log.Debug的日志-->
  <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" LEVEL="DEBUG">
    <!--生成文件在logs\Error目录下以debug-2014.06.04.log按照日期存储-->
    <param name="File" value="logs\Debug\debug"/>
    <param name="AppendToFile" value="true"/>
    <param name="DatePattern" value="-yyyy.MM.dd.'log'"/>
    <param name="RollingStyle" value="Date"/>
    <param name="StaticLogFileName" value="false"/>
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="## %d [%t] %-5p %x %m %n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <!--优先级 FATAL > ERROR > WARN > INFO > DEBUG-->
      <param name="LevelMin" value="DEBUG"/>
      <param name="LevelMax" value="DEBUG"/>
    </filter>
  </appender>
  <!--记录log.Info的日志-->
  <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" LEVEL="INFO">
    <!--生成文件在logs\Error目录下以info-2014.06.04.log按照日期存储-->
    <param name="File" value="logs\Info\info"/>
    <param name="AppendToFile" value="true"/>
    <param name="DatePattern" value="-yyyy.MM.dd.'log'"/>
    <param name="RollingStyle" value="Date"/>
    <param name="StaticLogFileName" value="false"/>
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="## %d [%t] %-5p %x %m %n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="INFO"/>
      <param name="LevelMax" value="INFO"/>
    </filter>
  </appender>
  <!--记录log.Error的日志,生成文件在logs\Error目录下以error-2014.06.04.log按照日期存储-->
  <appender name="ErrorFileAppender" type="log4net.Appender.RollingFileAppender" LEVEL="ERROR">
    <!--生成文件在logs\Error目录下以error-2014.06.04.log按照日期存储-->
    <param name="File" value="logs\Error\error"/>
    <param name="AppendToFile" value="true"/>
    <param name="DatePattern" value="-yyyy.MM.dd.'log'"/>
    <param name="RollingStyle" value="Date"/>
    <param name="StaticLogFileName" value="false"/>
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="## %d [%t] %-5p %x %m %n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="ERROR"/>
      <param name="LevelMax" value="ERROR"/>
    </filter>
  </appender>
</log4net>

4.在工程的AssemblyInfo.cs文件中添加如下语句:

[assembly: log4net.Config.XmlConfigurator(Watch = true, ConfigFile = "log4net.config")]

5.最后在需要记录日志的aspx.cs或cs类里,先定义一个log日志对象:

        //方法一:使用反射
        private static readonly ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
        //方法二:直接使用typeof(当前类名)获取当前类名Type
        private static readonly ILog log = LogManager.GetLogger(typeof(ErrorAttribute));

6.使用

6.1 一般在Global.asax 下面的Application_Error 记录最后一次的异常错误

        protected void Application_Error(object sender, EventArgs e)
        {
            log.Error("系统出现未处理的异常", HttpContext.Current.Server.GetLastError());
        }

6.2  其它地方使用

            //记录错误日志  
            //log.Error("error", new Exception("在这里发生了一个异常,Error Number:"+random.Next()));  
            //记录严重错误  
            //log.Fatal("fatal", new Exception("在发生了一个致命错误,Exception Id:"+random.Next()));  
            //记录一般信息  
            //log.Info("提示:系统正在运行");  
            //记录调试信息  
            //log.Debug("调试信息:debug");  
            //记录警告信息  
            //log.Warn("警告:warn");

详解深入了解参考:

周公log4net使用详解  http://blog.csdn.net/zhoufoxcn/article/details/222053

周公Log4Net使用详解(续)http://blog.csdn.net/zhoufoxcn/article/details/6029021

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值