使用log4net写日志

1.首先去下载log4net.dll,在项目中引用。

2.添加log4net.config配置文件(文件名可以自己取,但是一定要为配置文件类型),在配置文件中配置相关的配置。

3.在项目全局文件Global.asax中添加监控log4net配置。

protected void Application_Start()
        {
            log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(Server.MapPath("log4net.config")));
        }

4.初始化ILog。

public static ILog LogToText = LogManager.GetLogger("LogView");

5.测试写日志功能。

LogToText.Error("测试配置123!")

我的配置文件(注意:下面的
为配置文件中的换行):

<?xml version="1.0" encoding="utf-8"?>
<log4net debug="false">

  <root>
    <appender-ref ref="" />
  </root>

  <!--框架日志-->
  <logger name="LogView" additivity="false">
    <level value="ALL" />
    <appender-ref ref="FATAL" />
    <appender-ref ref="ERROR" />
    <appender-ref ref="WARN" />
    <appender-ref ref="INFO" />
    <appender-ref ref="DEBUG" />
  </logger>

  <appender name="FATAL" type="log4net.Appender.RollingFileAppender">
    <file value="App_DataLogfatal"/>
    <appendToFile value="true"/>
    <rollingStyle value="Date"/>
    <datePattern value="yyyyMMdd'.log'"/>
    <staticLogFileName value="false"/>
    <param name="lockingModel"  type="log4net.Appender.FileAppender+MinimalLock" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="
[%d{yy/MM/dd HH:mm:ss.fff}][Thread=%thread]: %m%n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="FATAL"/>
      <param name="LevelMax" value="FATAL"/>
    </filter>
  </appender>

  <appender name="ERROR" type="log4net.Appender.RollingFileAppender">
    <file value="App_DataLogerror"/>
    <appendToFile value="true"/>
    <rollingStyle value="Date"/>
    <datePattern value="yyyyMMdd'.log'"/>
    <staticLogFileName value="false"/>
    <param name="lockingModel"  type="log4net.Appender.FileAppender+MinimalLock" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="
[%d{yy/MM/dd HH:mm:ss.fff}][Thread=%thread]: %m%n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="ERROR"/>
      <param name="LevelMax" value="ERROR"/>
    </filter>
  </appender>

  <appender name="WARN" type="log4net.Appender.RollingFileAppender">
    <file value="App_DataLogwarn"/>
    <appendToFile value="true"/>
    <rollingStyle value="Date"/>
    <datePattern value="yyyyMMdd'.log'"/>
    <staticLogFileName value="false"/>
    <param name="lockingModel"  type="log4net.Appender.FileAppender+MinimalLock" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="
[%d{yy/MM/dd HH:mm:ss.fff}][Thread=%thread]: %m%n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="WARN"/>
      <param name="LevelMax" value="WARN"/>
    </filter>
  </appender>

  <appender name="INFO" type="log4net.Appender.RollingFileAppender">
    <file value="App_DataLoginfo"/>
    <appendToFile value="true"/>
    <rollingStyle value="Date"/>
    <datePattern value="yyyyMMdd'.log'"/>
    <staticLogFileName value="false"/>
    <param name="lockingModel"  type="log4net.Appender.FileAppender+MinimalLock" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="
[%d{yy/MM/dd HH:mm:ss.fff}][Thread=%thread]: %m%n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="INFO"/>
      <param name="LevelMax" value="INFO"/>
    </filter>
  </appender>

  <!--调试-->
  <appender name="DEBUG" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="App_Data/Log/debug/"/>
    <param name="AppendToFile" value="True"/>
    <param name="RollingStyle" value="Size" />
    <param name="MaxSizeRollBackups" value="100"/>
    <param name="MaximumFileSize" value="1024KB"/>
    <param name="StaticLogFileName" value="True"/>
    <param name="DatePattern" value="yyyyMMdd".log""/>
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="
[%d{yy/MM/dd HH:mm:ss.fff}][Thread=%thread]: %m%n"/>
    </layout>
    <filter type="log4net.Filter.LevelRangeFilter">
      <param name="LevelMin" value="DEBUG"/>
      <param name="LevelMax" value="DEBUG"/>
    </filter>
  </appender>
</log4net>

  

原文地址:https://www.cnblogs.com/myparadiseworld/p/6432919.html