3分钟上手log4net

时间:2021-04-14 14:45:14

1. config里

<log4net>

    <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >

      <layout type="log4net.Layout.PatternLayout">

        <conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline" />

      </layout>

    </appender>

 

    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender"  >

      <!--配置在root注册的appender-ref具体属性-->

      <param name="File" value="log//"/>

      <param name="StaticLogFileName" value="false" />

      <param name="DatePattern" value="yyyy-MM-dd.LOG" />

      <param name="AppendToFile" value="true"/>

      <!--按照文件的大小进行变换日志文件-->

      <param name="RollingStyle" value="Date" />

      <!--单个文件最大数量-->

      <param name="MaximumFileSize" value="1000KB"/>

      <!--保留的log文件数量 超过此数量后 自动删除之前的  -->

      <param name="MaxSizeRollBackups" value="100" />

      <!--最小锁定模型以允许多个进程可以写入同一个文件-->

      <param name="lockingModel"  type="log4net.Appender.FileAppender+MinimalLock" />

      <!--type属性,定义类型-->

      <layout type="log4net.Layout.PatternLayout">

        <!--定义日志会话(logger session)开始输出的文字-->

        <!--<param name="Header" value="异常开始记录 :"/>-->

        <!--定义日志会话(logger session)结束输出的文字-->

        <!--<param name="Footer" value="[Footer]\r\n"/>-->

        <!--输出信息的模式: -->

        <param name="ConversionPattern" value="%n %d 当前log对象:%c  - %m%n"/>

      </layout>

      <!--过滤器,只需要min和max之间的级别-->

      <filter type="log4net.Filter.LevelRangeFilter">

        <param name="LevelMin" value="DEBUG"/>

        <param name="LevelMax" value="ERROR"/>

      </filter>

    </appender>

    <root>

      <level value="INFO" />

      <!--<appender-ref ref="ConsoleAppender" />-->

      <appender-ref ref="LogFileAppender" />

    </root>

  </log4net>

</configuration>

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />

  </configSections>

2. namespace上

[assembly: log4net.Config.XmlConfigurator(Watch = true)]

namespace Sample_5

3. 初始化

ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);          

4. 使用

log.Error("error",new Exception("发生了一个异常"));

//记录严重错误

log.Fatal("fatal",new Exception("发生了一个致命错误"));

//记录一般信息

log.Info("info");

//记录调试信息

log.Debug("debug");

//记录警告信息

log.Warn("warn");

下载log4net  访问密码 d28e