本文只记录了将日志按照日期记录到文件中的方法。

注:1.如果将该方法封装在类库中,在引用类库的项目中添加配置文件。

  2.如果程序为控制台程序、winfrom程序,需将配置文件存放在/bin/debug/中。

1.引用 Log4Net.dll

2.在项目AssemblyInfo.cs中添加

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

其中ConfigFile为配置文件存放位置。

3.编写配置文件Log4Net.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <log4net>
    <logger name="ErrorLog">
      <appender-ref ref="ErrorLog"></appender-ref>
    </logger>
    <appender name="ErrorLog" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="MainLog/" />
      <param name="AppendToFile" value="true" />
      <!--是否默认文件名-->
      <param name="StaticLogFileName" value="false" />
      <!--变换的形式为日期-->
      <rollingStyle value="Date" />
      <!--日期的格式,每天换一个文件记录-->
      <datePattern value="yyyyMMdd.TXT" />
      <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
      </layout>
    </appender>

    <logger name="InfoLog">
      <level value="INFO"></level>
      <appender-ref ref="InfoLog"></appender-ref>
    </logger>
    <appender name="InfoLog" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="InfoLog\\" />
      <param name="AppendToFile" value="true" />
      <!--是否默认文件名-->
      <param name="StaticLogFileName" value="false" />
      <!--变换的形式为日期-->

      <rollingStyle value="Date" />

      <!--日期的格式,每天换一个文件记录-->

      <datePattern value="yyyyMMdd.TXT" />

      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
      </layout>
    </appender>


    <logger name="WarnLog">
      <level value="INFO"></level>
      <appender-ref ref="WarnLog"></appender-ref>
    </logger>
    <appender name="WarnLog" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="WarnLog\\" />
      <param name="AppendToFile" value="true" />
      <!--是否默认文件名-->
      <param name="StaticLogFileName" value="false" />
      <!--变换的形式为日期-->

      <rollingStyle value="Date" />

      <!--日期的格式,每天换一个文件记录-->

      <datePattern value="yyyyMMdd.TXT" />

      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
      </layout>
    </appender>

    <logger name="FatalLog">
      <level value="INFO"></level>
      <appender-ref ref="FatalLog"></appender-ref>
    </logger>
    <appender name="FatalLog" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="FatalLog\\" />
      <param name="AppendToFile" value="true" />
      <!--是否默认文件名-->
      <param name="StaticLogFileName" value="false" />
      <!--变换的形式为日期-->

      <rollingStyle value="Date" />

      <!--日期的格式,每天换一个文件记录-->

      <datePattern value="yyyyMMdd.TXT" />

      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="[Log]%n记录时间:%d %n异常信息:%m%n[EndLog]%n%n" />
      </layout>
    </appender>
    
    
    
  </log4net>

</configuration>

4.程序中使用

 log4net.ILog _errorLog = log4net.LogManager.GetLogger("ErrorLog");
//ErrorLog 为 Log4Net.config中logger设置的
_errorLog .Warn("错误信息");

 

posted on 2014-02-20 16:03  mrma1989  阅读(288)  评论(0编辑  收藏  举报