<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
configuration
scan
=
"true"
scanPeriod
=
"60 seconds"
debug
=
"false"
>
<
property
name
=
"log.level"
value
=
"debug"
/>
<
property
name
=
"log.maxHistory"
value
=
"30"
/>
<
property
name
=
"log.filePath"
value
=
"${catalina.base}/logs/webapps"
/>
<
property
name
=
"log.pattern"
value
=
"%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n"
/>
<
appender
name
=
"consoleAppender"
class
=
"ch.qos.logback.core.ConsoleAppender"
>
<
encoder
>
<
pattern
>${log.pattern}</
pattern
>
</
encoder
>
</
appender
>
<
appender
name
=
"debugAppender"
class
=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<
file
>${log.filePath}/debug.log</
file
>
<
rollingPolicy
class
=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<
fileNamePattern
>${log.filePath}/debug/debug.%d{yyyy-MM-dd}.log.gz
</
fileNamePattern
>
<
maxHistory
>${log.maxHistory}</
maxHistory
>
</
rollingPolicy
>
<
encoder
>
<
pattern
>${log.pattern}</
pattern
>
</
encoder
>
<
filter
class
=
"ch.qos.logback.classic.filter.LevelFilter"
>
<
level
>DEBUG</
level
>
<
onMatch
>ACCEPT</
onMatch
>
<
onMismatch
>DENY</
onMismatch
>
</
filter
>
</
appender
>
<
appender
name
=
"infoAppender"
class
=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<
file
>${log.filePath}/info.log</
file
>
<
rollingPolicy
class
=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<
fileNamePattern
>${log.filePath}/info/info.%d{yyyy-MM-dd}.log.gz
</
fileNamePattern
>
<
maxHistory
>${log.maxHistory}</
maxHistory
>
</
rollingPolicy
>
<
encoder
>
<
pattern
>${log.pattern}</
pattern
>
</
encoder
>
<
filter
class
=
"ch.qos.logback.classic.filter.LevelFilter"
>
<
level
>INFO</
level
>
<
onMatch
>ACCEPT</
onMatch
>
<
onMismatch
>DENY</
onMismatch
>
</
filter
>
</
appender
>
<
appender
name
=
"errorAppender"
class
=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<
file
>${log.filePath}/erorr.log</
file
>
<
rollingPolicy
class
=
"ch.qos.logback.core.rolling.TimeBasedRollingPolicy"
>
<
fileNamePattern
>${log.filePath}/error/error.%d{yyyy-MM-dd}.log.gz
</
fileNamePattern
>
<
maxHistory
>${log.maxHistory}</
maxHistory
>
</
rollingPolicy
>
<
encoder
>
<
pattern
>${log.pattern}</
pattern
>
</
encoder
>
<
filter
class
=
"ch.qos.logback.classic.filter.LevelFilter"
>
<
level
>ERROR</
level
>
<
onMatch
>ACCEPT</
onMatch
>
<
onMismatch
>DENY</
onMismatch
>
</
filter
>
</
appender
>
<
logger
name
=
"com.imooc.o2o"
level
=
"${log.level}"
additivity
=
"true"
>
<
appender-ref
ref
=
"debugAppender"
/>
<
appender-ref
ref
=
"infoAppender"
/>
<
appender-ref
ref
=
"errorAppender"
/>
</
logger
>
<
root
level
=
"info"
>
<
appender-ref
ref
=
"consoleAppender"
/>
</
root
>
</
configuration
>