.net日记记录log4net用法

先引用log4net,然后在global.asax里的Application_Start中添加log4net.Config.DOMConfigurator.Configure();

在设置web.config配置文件.

在web.cofig根节点 configuration 中加入如下section: 
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
  </configSections>


接着在 位于web.config根节点 configuration 下添加:


  <log4net>

    <!--写入到文件-->
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <!--<file value="log\log.txt"/>-->
      <!--<file name="Client.Logging" value="log\log" />-->
      <file value="log\log" />
      <!--是否覆盖-->
      <appendToFile value="true"/>
      <!--设置无限备份=-1 ,最大备份数为1000-->
      <maxSizeRollBackups value="10"/>
      <!--每个文件的最大20k-->
      <maximumFileSize value="5MB"/>
      <!--名称是否可以更改 为false为可以更改-->
      <param name="StaticLogFileName" value="false" />
      <!--文件名称-->
      <param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />
      <param name="RollingStyle" value="Composite" />
      <!--<param name="RollingStyle" value="Composite" />-->
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%n%d [%r] [%t] %-5p %c  - %m%n" />
      </layout>
    </appender>


    <root>
      <level value="ALL"/>
      <appender-ref ref="ADONetAppender_SqlServer"/>
      <appender-ref ref="RollingLogFileAppender"/>
      <appender-ref ref="EventLogAppender"></appender-ref>
      <appender-ref ref="AdoNetAppender_Access"></appender-ref>
      <appender-ref ref="ColoredConsoleAppender"></appender-ref>
      <appender-ref ref="FileAppender"></appender-ref>
    </root>
    <!-- Specify the level for some specific categories -->
    <!--<logger name="ConsoleApp.LoggingExample">
      -->
    <!-- <appender-ref ref="B" /> -->
    <!--
      <level value="ALL"/>
      <appender-ref ref="ADONetAppender_SqlServer"/>
      <appender-ref ref="RollingLogFileAppender"/>
    </logger>-->
  </log4net>


最后在代码中引用log4net.
就OK了.以上的操作是用txt来记录日志的.
Log4net中ConversionPattern的代碼解釋
%m(message):输出的日志消息,如ILog.Debug(…)输出的一条消息%n(new line):換行%d(datetime):输出当前语句运行的时刻
%r(run time):输出程序从运行到执行到当前语句时消耗的毫秒数
%t(thread id):当前语句所在的线程ID
%p(priority): 日志的当前优先级别,即DEBUG、INFO、WARN…等
%c(class):当前日志对象的名称
%L:输出语句所在的行号
%F:输出语句所在的文件名
%-数字:表示该项的最小长度,如果不够,则用空格填充

原文地址:https://www.cnblogs.com/linjiancun/p/1695005.html