<?xml version="1.0" encoding="UTF-8"?> <configuration> <substitutionProperty name="log.proj" value="${project.artifactId}" /> <substitutionProperty name="log.base" value="logs/${log.proj}" /> <substitutionProperty name="max.size" value="100MB" /> <jmxConfigurator /> <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"> <layout class="ch.qos.logback.classic.PatternLayout"> <pattern>%date [%thread] %-5level %logger{80} - %msg%n</pattern> </layout> </appender> <appender name="file.info" class="ch.qos.logback.core.rolling.RollingFileAppender"> <File>${log.base}/${log.proj}_info.log</File> <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> <fileNamePattern>${log.base}/${log.proj}_info.%i.gz</fileNamePattern> <minIndex>1</minIndex> <maxIndex>20</maxIndex> </rollingPolicy> <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> <maxFileSize>${max.size}</maxFileSize> </triggeringPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> <filter class="ch.qos.logback.classic.filter.LevelFilter"> <level>INFO</level> <onMatch>ACCEPT</onMatch> <onMismatch>DENY</onMismatch> </filter> </appender> <root level="DEBUG"> <appender-ref ref="stdout" /> <appender-ref ref="file.info" /> </root> <logger name="org.apache.zookeeper" additivity="false"> <appender-ref ref="file.info" /> <level value="INFO" /> </logger> </configuration>
默认maxIndex:7,MAX_WINDOW_SIZE:20。
如果需要保存更多的日志,需要变更日志保存策略或重写FixedWindowRollingPolicy类。