rexian

咨询电话:023-6276-4481

热门文章

联系方式

电 话:023-6276-4481

邮箱:broiling@qq.com

地址:重庆市南岸区亚太商谷6幢25-2

当前位置:网站首页 > 技术文章 > Log4net日志框架

Log4net日志框架

编辑:kangkang 发表时间:2017-08-25 13:32:36
kangkang

Log4net日志框架

命名空间增加特性

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


App.config配置文件

在应用程序需要增加配置文件

 <log4net>

    <!--日志对象根设置-->

    <root>

      <!--定义Level级别,若没定义,默认为Debug-->

      <!--OFF>FATAL>ERROR>WARM>INFO>DEBUG>ALL-->

      <level value="ALL"/>

      <!--定义日志对象使用的appender,通过appeder-ref来注册-->

      <appender-ref ref="LogFileAppenderError"/>

      <appender-ref ref="LogFileAppenderCommunication"/>

     

    </root>

    <!--定义具体的logger对象 通过调用LogManager.GetLogger(“wcflog”)函数,你可以检索具有该名字的日志。如果LogManager.GetLogger(…)打开的不是预定义的日志对象,则该日志对象会继承根日志对象的属性。知道了这一点,我们可以说,其实<logger>标签并不是必须的-->

    <logger name="wcflog" additivity="true">

      <!--additivity 是否确认子日志对象继承父日志对象的appender列表,默认为True:确认-->

      <!--注意优先级,优先级低的要放在后面-->

      <level value="INFO"/>

      <level value="DEBUG"/>

    </logger>

 

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

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

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

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

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

      <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%m"/>

      </layout>

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

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

        <levelMin value ="INFO"/>

        <levelMax value ="INFO"/>

      </filter>

    </appender>

      </log4net>

注意,以下方式过滤时存在问题

<param name="levelMin" value="FATAL">

<param name="levelMax" value="FATAL">