﻿<?xml version="1.0" encoding="utf-8" ?>
<log4net>
  <!--web begin-->
  <!--错误日志配置-->
  <appender name="WEBErrorAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//WEBlog//LogError//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="MaxFileSize" value="10240" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n异常时间：%d [%t] %n异常级别：%p %n异 常 类：%c [%x] %n%m %n " />
    </layout>
  </appender>
  <!--信息日志配置-->
  <appender name="WEBInfoAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//WEBlog//LogInfo//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n日志时间：%d [%t] %n日志级别：%p %n日 志 类：%c [%x] %n%m %n" />
    </layout>
  </appender>
  <!--警告日志配置-->
  <appender name="WEBWarnAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//WEBlog//LogWarn//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n日志时间：%d [%t] %n日志级别：%p %n日 志 类：%c [%x] %n%m %n" />
    </layout>
  </appender>
  <!--log4net.LogManager.GetLogger("logerror")用这个来选择这种类型-->
  <logger name="WEBlogError">
    <level value="Error" />
    <appender-ref ref="WEBErrorAppender" />
  </logger>
  <logger name="WEBlogInfo">
    <level value="Info" />
    <appender-ref ref="WEBInfoAppender" />
  </logger>
  <logger name="WEBlogWarn">
    <level value="Info" />
    <appender-ref ref="WEBWarnAppender" />
  </logger>
  <!--web  end-->
  <!--APP BEGIN-->
  <!--错误日志配置-->
  <appender name="APPErrorAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//APPlog//LogError//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="MaxFileSize" value="10240" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n异常时间：%d [%t] %n异常级别：%p %n异 常 类：%c [%x] %n%m %n " />
    </layout>
  </appender>
  <!--信息日志配置-->
  <appender name="APPInfoAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//APPlog//LogInfo//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n日志时间：%d [%t] %n日志级别：%p %n日 志 类：%c [%x] %n%m %n" />
    </layout>
  </appender>
  <!--警告日志配置-->
  <appender name="APPWarnAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//APPlog//LogWarn//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n日志时间：%d [%t] %n日志级别：%p %n日 志 类：%c [%x] %n%m %n" />
    </layout>
  </appender>
  <!--log4net.LogManager.GetLogger("APPlogError")用这个来选择这种类型-->
  <logger name="APPlogError">
    <level value="Error" />
    <appender-ref ref="APPErrorAppender" />
  </logger>
  <logger name="APPlogInfo">
    <level value="Info" />
    <appender-ref ref="APPInfoAppender" />
  </logger>
  <logger name="APPlogWarn">
    <level value="Info" />
    <appender-ref ref="APPWarnAppender" />
  </logger>
  <!--APP END -->
  <!--Wechat BEGIN-->
  <!--错误日志配置-->
  <appender name="WechatErrorAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//Wechatlog//LogError//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="MaxFileSize" value="10240" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n异常时间：%d [%t] %n异常级别：%p %n异 常 类：%c [%x] %n%m %n " />
    </layout>
  </appender>
  <!--信息日志配置-->
  <appender name="WechatInfoAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//Wechatlog//LogInfo//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n日志时间：%d [%t] %n日志级别：%p %n日 志 类：%c [%x] %n%m %n" />
    </layout>
  </appender>
  <!--警告日志配置-->
  <appender name="WechatWarnAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//Wechatlog//LogWarn//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n日志时间：%d [%t] %n日志级别：%p %n日 志 类：%c [%x] %n%m %n" />
    </layout>
  </appender>
  <!--log4net.LogManager.GetLogger("WechatlogError")用这个来选择这种类型-->
  <logger name="WechatlogError">
    <level value="Error" />
    <appender-ref ref="WechatErrorAppender" />
  </logger>
  <logger name="WechatlogInfo">
    <level value="Info" />
    <appender-ref ref="WechatInfoAppender" />
  </logger>
  <logger name="WechatlogWarn">
    <level value="Info" />
    <appender-ref ref="WechatWarnAppender" />
  </logger>
  <!--Wechat END -->  
</log4net>
  <!-- 警告日志配置 --><!--
  <appender name="WarnAppender" type="log4net.Appender.RollingFileAppender">
    <param name="File" value="Output//log//logWarn//" />
    <param name="AppendToFile" value="true" />
    <param name="MaxFileSize" value="10240" />
    <param name="MaxSizeRollBackups" value="100" />
    <param name="StaticLogFileName" value="false" />
    <param name="DatePattern" value="yyyyMMdd" />
    <param name="RollingStyle" value="Date" />
    <layout type="log4net.Layout.PatternLayout">
      <param name="ConversionPattern" value="%n日志时间：%d [%t] %n警告级别：%p %n警 告 类：%c [%x] %n%m %n" />
    </layout>
  </appender>-->
<!-- root 在框架的体系里，所有的日志对象都是根日志(root logger)的后代。 
因此如果一个日志对象没有在配置文件里显式定义，则框架使用根日志中定义的属性。在<root>标签里，可以定义level级别值和Appender的列表。
如果没有定义LEVEL的值，则缺省为DEBUG。可以通过<appender-ref>标签定义日志对象使用的Appender对象。<appender-ref>声明了在其他地方定义的Appender对象的一个引用。在一个logger对象中的设置会覆盖根日志的设置。
而对Appender属性来说，子日志对象则会继承父日志对象的Appender列表。这种缺省的行为方式也可以通过显式地设定<logger>;标签的additivity属性为false而改变。-->
<!-- 格式名含义
%c输出日志信息所属的类的全名
%d输出日志时间点的日期或时间，默认格式为ISO8601，也可以在其后指定格式，比如：%d{yyy-MM-ddHH:mm:ss}，输出类似：2002-10-18-22：10：28
%f输出日志信息所属的类的类名
%l输出日志事件的发生位置，即输出日志信息的语句处于它所在的类的第几行
%m输出代码中指定的信息，如log(message)中的message
%n输出一个回车换行符，Windows平台为“\r\n”，Unix平台为“\n”
%p输出优先级，即DEBUG，INFO，WARN，ERROR，FATAL。如果是调用debug()输出的，则为DEBUG，依此类推
%r输出自应用启动到输出该日志信息所耗费的毫秒数
%t输出产生该日志事件的线程名
 -->
