<?xml version="1.0" encoding="UTF-8"?> <configuration scan="true" debug="false" scanPeriod="6 seconds"> <!-- scan: 当此属性设置为true时,配置文件若是发生改变,将会被从新加载,默认值为true --> <!-- debug: 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false --> <contextName>logback</contextName> <!-- contextName: 设置日志上下文名称,能够经过%contextName来打印日志上下文名称 --> <property name="log.path" value="/usr/local/importdata/webapps/logs/mysteel-importdata.log" /> <!-- property能够用来设置变量,能够经过${name}来访问 name,用于${name}访问的key value,用于${name}访问的value --> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <!--filter 日志输出拦截器,能够自定义拦截器也能够用系统一些定义好的拦截器 --> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>WARN</level> <!-- ThresholdFilter来过滤掉ERROR级别如下的日志不输出到文件中 --> </filter> <encoder> <pattern>%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern> <!-- encoder和pattern节点组合用于具体输出的日志格式 --> </encoder> </appender> <!-- appender: 格式化日志输出节点,有俩个属性name和class,class用来指定哪一种输出策略,经常使用就是控制台输出策略和文件输出策略 --> <!-- 用SizeAndTimeBasedRollingPolicy,配置子节点的maxFileSize来指定单个日志文件的大小 --> <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!-- file节点用来指明日志文件的输出位置,能够是绝对路径也能够是相对路径 --> <file>${log.path}</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${log.path}.%d{yyyy-MM-dd}.zip</fileNamePattern> <!-- 单个日志文件最多 100MB, 60天的日志周期,最大不能超过20GB --> <maxFileSize>100KB</maxFileSize> <maxHistory>7</maxHistory> <totalSizeCap>2MKB</totalSizeCap> <!-- <maxFileSize>100MB</maxFileSize> <maxHistory>60</maxHistory> <totalSizeCap>20GB</totalSizeCap> --> </rollingPolicy> <!-- rollingPolicy日志回滚策略,在这里咱们用了TimeBasedRollingPolicy,基于时间的回滚策略,有如下子节点 --> <encoder> <pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n</pattern> </encoder> </appender> <root level="DEBUG"> <appender-ref ref="console" /> <appender-ref ref="file" /> </root> <!-- root节点,必选节点,用来指定最基础的日志输出级别, 用来应用appender,格式化日志输出 --> <logger name="com.mysteel.importdata" level="DEBUG" /> <!-- logger节点,可选节点,用来具体指明包的日志输出级别,它将会覆盖root的输出级别 --> </configuration> <!-- × Debug × Info × Warn × Error × Fatal 一个等级比一个高 -->