<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property resource="app.properties"/>
<property name="LOG_HOME" value="/home" />
<appender name="DEFAULT-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/default/common-default.log.%d{yyyyMMdd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
</appender>
<appender name="ERROR-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/error/common-error.log.%d{yyyyMMdd}</fileNamePattern>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
</appender>
<appender name="PERF-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/perf/common-perf.log.%d{yyyyMMdd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
</appender>
<appender name="DAO-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/dao/common-dao.log.%d{yyyyMMdd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
</appender>
<appender name="SERVICE-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/service/common-service.log.%d{yyyyMMdd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
</appender>
<appender name="BUSINESS-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/business/common-business.log.%d{yyyyMMdd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
</appender>
<appender name="WEB-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/web/common-web.log.%d{yyyyMMdd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
</appender>
<appender name="ALARM-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/alarm/common-alarm.log.%d{yyyyMMdd}</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d [%t] %-5p %c{2} [%X{traceRootId}] - [%m]%n</pattern>
</encoder>
</appender>
<appender name="TRACE-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.home}/trace/tracing.log.%d{yyyy-MM-dd-HH}.gz</fileNamePattern>
<maxHistory>72</maxHistory>
</rollingPolicy>
<encoder charset="UTF-8">
<pattern>%d - [%m]%n</pattern>
</encoder>
</appender>
<logger name="com.myself.ssmTest.controller" additivity="false">
<level value="${log.root.level}"/>
<appender-ref ref="WEB-APPENDER"/>
<appender-ref ref="ERROR-APPENDER"/>
</logger>
<logger name="com.myself.ssmTest.service" additivity="false">
<level value="${log.root.level}"/>
<appender-ref ref="SERVICE-APPENDER"/>
<appender-ref ref="ERROR-APPENDER"/>
</logger>
<logger name="com.myself.ssmTest.dao" additivity="false">
<level value="${log.root.level}"/>
<appender-ref ref="DAO-APPENDER"/>
<appender-ref ref="ERROR-APPENDER"/>
</logger>
<logger name="com.myself.ssmTest.model" additivity="false">
<level value="INFO"/>
<appender-ref ref="TRACE-APPENDER"/>
<appender-ref ref="ERROR-APPENDER"/>
</logger>
<logger name="businessLogger" additivity="false">
<level value="${log.root.level}"/>
<appender-ref ref="BUSINESS-APPENDER"/>
<appender-ref ref="ERROR-APPENDER"/>
</logger>
<logger name="com.tuan.core.common.aop.pref.PerformanceMonitorInterceptor" additivity="false">
<level value="INFO"/>
<appender-ref ref="PERF-APPENDER"/>
</logger>
<logger name="java.sql" additivity="false">
<level value="${log.root.level}"/>
<appender-ref ref="DAO-APPENDER"/>
<appender-ref ref="ERROR-APPENDER"/>
</logger>
<logger name="alarmLogger" additivity="false">
<level value="${log.root.level}"/>
<appender-ref ref="ALARM-APPENDER"/>
<appender-ref ref="ERROR-APPENDER"/>
</logger>
<logger name="org.springframework" level="${log.root.level}"/>
<logger name="org.apache" level="WARN"/>
<logger name="org.mybatis.spring" level="${log.root.level}"/>
<logger name="java" level="WARN"/>
<logger name="com.mchange" additivity="false">
<level value="WARN"/>
<appender-ref ref="DAO-APPENDER"/>
</logger>
<root level="${log.root.level}">
<appender-ref ref="DEFAULT-APPENDER"></appender-ref>
<appender-ref ref="ERROR-APPENDER"></appender-ref>
</root>
</configuration>
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
<property name="LOG_HOME" value="/home" />
<property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n" />
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<appender name="LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>{LOG_HOME}/info.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${LOG_HOME}/info.log.%d{yyyy-MM-dd}.log</FileNamePattern>
<MaxHistory>30</MaxHistory>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>50MB</MaxFileSize>
</triggeringPolicy>
</appender>
<logger name="com.apache.ibatis" level="TRACE"/>
<logger name="java.sql.Connection" level="DEBUG"/>
<logger name="java.sql.Statement" level="DEBUG"/>
<logger name="java.sql.PreparedStatement" level="DEBUG"/>
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="LOG" />
</root>
</configuration>