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">

posted @ 2017-08-25 13:01  sunlyk  阅读(181)  评论(0编辑  收藏  举报