log4net 简单使用教程(配置)

步骤一:引用log4net配置文件

log4net.config配置如下:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <!--type属性的完整格式为:配置节处理器类名,程序集名称,Version=程序集版本号,Culture=区域信息,PublicKeyToken=公钥-->
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  </configSections>
  <log4net>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="log.txt" />
      <param name="AppendToFile" value="true" />
      <param name="MaxSizeRollBackups" value="10" />
      <param name="StaticLogFileName" value="false" />
      <param name="DatePattern" value="yyyyMMddHH&quot;.log&quot;"  />
      <param name="RollingStyle" value="Date" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="conversionPattern" value="%d [%t] 日志级别:%-5p 出错类: %l - 描述:%message%newline" />
        <param name="ConversionPattern" value="%d [%t] %-5p %l  %m  %n" />
      </layout>
    </appender>
    <root>
      <level value="All" />
      <appender-ref ref="LogFileAppender" />
    </root>
  </log4net>
</configuration>

步骤二:修改AssemblyInfo.cs文件,添加log4net.config文件配置

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

步骤三:程序调用:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;

//
using log4net;

namespace Log4NetDemo
{
    /// <summary>
    /// 说明:本程序演示如何利用log4net记录程序日志信息。log4net是一个功能著名的开源日志记录组件。
    /// 利用log4net可以方便地将日志信息记录到文件、控制台、Windows事件日志和数据库中(包括MS SQL Server, Access, Oracle9i,Oracle8i,DB2,SQLite)。
    /// 下面的例子展示了如何利用log4net记录日志
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            
            //创建日志记录组件实例
            ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

            //System.Reflection.MethodBase.GetCurrentMethod().DeclaringType 
            //是利用反射获取当前类的type,记录在日志中,便于定位日志发生的所在

            try
            {
                throw new Exception("抛出异常");
            }
            catch
            {
                log.Error("这是一个错误日志");
                log.Fatal("这是一个致命的错误日志");
                log.Warn("这是一条警告日志");
                log.Info("这是一条普通信息");
              

            }
               
                Console.WriteLine("日志记录完毕。");
                Console.Read();
           
        }
    }
}

代码完毕

执行完成后,会在Bin目录下看到生成的log文件,具体名称可以在log4net.config文件中配置,具体配置方法请参考官方说明文档。

image_thumb1

源代码下载地址:Log4NetDemo.rar

VS2010编译通过

原文地址:https://www.cnblogs.com/CnKker/p/2887157.html