初学Log4Net

1、Log4Net是什么?

       Log4Net 是用来记录日志的,可以将程序运行过程中的信息输出到一些地方(文件、数据库、 EventLog 等)
 
2、Appender
     Appender:可以将日志输出到不同的地方,不同的输出目标对应不同的Appender:RollingFileAppender(滚动文件)、AdoNetAppender(数据库)、SmtpAppender (邮件)等
 
3、 level
     level(级别):标识这条日志信息的重要级别。None>Fatal>ERROR>WARN>DEBUG>INFO>ALL,设定一个Level,那么低于这个Level的日志是不会被写到Appender中的
 
4、 配置一个 Log4NetDemo的 环境步骤
     (1)、 新建一个控制台项目,添加一个“应用程序配置文件”( App.config
     (2)、 App.Config 或者 Web.Config 的添加如下配置:
              <!-- Log4net块配置 -->
     <  configSections >
      <  section  name  = " log4net  "  type  = " log4net.Config.Log4NetConfigurationSectionHandler, log4net  " />
     </ configSections >
 
     < log4net >
      <!-- 定义一些  appenders  -->
      <  appender  name  = " RollingLogFileAppender  "  type  = " log4net.Appender.RollingFileAppender  " >
      <!--  写到哪个文件里去  -->
      <  file  value  = " test.txt  " />
      <!--  往文件里追加  -->
      <  appendToFile  value  = " true  " />
      <!--  最多10个日志备份文件  -->
      <  maxSizeRollBackups  value  = " 10  " />
      <!--  每个文件最大为1M  -->
      <  maximumFileSize  value  = " 1024KB  " />
      <!--  回滚的格式按照大小  -->
      <  rollingStyle  value  = " Size  " />
      <  staticLogFileName  value  = " true  " />
      <!-- 日志输出格式 -->
      <  layout  type  = " log4net.Layout.PatternLayout  " >
       <  conversionPattern  value  = " %date [%thread] %-5level %logger - %message%newline  " />
       </  layout >
       </  appender >
       <  root >
      <!-- 定义level级别值和appender的列表 -->
      <  level  value  = " DEBUG  " />
      <  appender-ref  ref  = " RollingLogFileAppender  " />
      </  root >
  </ log4net >
     (3)、 添加对 log4net.dll 的引用
     (4)、 初始化:在程序最开始加入 log4net.Config.XmlConfigurator.Configure();
     (5)、 在要打印日志的地方 LogManager.GetLogger(typeof(Program)) .Debug(" 信息 ");  通过 LogManager.GetLogger 传递要记录的日志类类名获得这个类的 ILog (这样在      日志文件中就能看到这条日志是哪个类输出的了),然后调用 Debug 方法输出消息。因为一个类内部不止一个地方要打印日志,所以一般把 ILog 声明为一个 static 字段。
     (6)、 输出错误信息用 ILog.Error 方法,第二个参数可以传递 Exception 对象。 log.Error ("*** 错误 "+ex) log.Error ("*** 错误 ",ex)
 
  主程序代码:
  amespace log4netDemo

     {
          class Program
         {
             private static ILog log = LogManager.GetLogger(typeof(Program));
             static void Main(string[] args)
             {

              //从配置文件读取log4net的配置,然后进行初始化操作
                 log4net.Config.XmlConfigurator.Configure();
                 log.Debug("调试");
                 log.Error("出错");
             }
         }
      }

 运行结果:在该程序bin/Debug目录下生成test.txt文本文件,内容如下:   

  2013-10-20 00:39:24,730 [8] DEBUG log4netDemo.Program - 调试
  2013-10-20 00:39:24,743 [8] ERROR log4netDemo.Program - 出错

你可能感兴趣的:(初学Log4Net)