Spring Boot内嵌的tomcat日志,支持配置access.log,不过我们想打印catalina和tomcat日志是没有办法的,需要我们在日志文件中新增appender实现。
在resource下新增一个日志配置文件logback-spring.xml,然后在里面新增一个appender,用于写日志文件,定义日志滚动策略等配置。
新增2个logger,一个用于org.apache.catalina包下的日志,一个用于org.apache.tomcat,引用上面定义的appender,这2个包下的日志就可以写到日志文件里了。
<?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="true" scanPeriod="30 seconds" debug="false">
<property name="LOGGER_HOME_IN_R13" value="/tmp/logs/" />
<property name="ROOT_LEVEL_IN_R13" value="INFO" />
<appender name="CATALINA_LOG"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<prudent>false</prudent>
<append>true</append>
<File>${LOGGER_HOME_IN_R13}/catalina.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<FileNamePattern>${LOGGER_HOME_IN_R13}/catalina.log.%i.zip
</FileNamePattern>
<MinIndex>1</MinIndex>
<MaxIndex>20</MaxIndex>
</rollingPolicy>
<triggeringPolicy
class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>20MB</MaxFileSize>
</triggeringPolicy>
<encoder>
<Pattern>%d{yyyy-MM-dd HH:mm:ss:SSS} [%p] [%C{1}.java:%L] ->[%t] %m%n</Pattern>
</encoder>
</appender>
<logger name="org.apache.catalina" level="${CATALINA_LEVEL_IN_R13}" additivity="false">
<appender-ref ref="CATALINA_LOG"/>
</logger>
<logger name="org.apache.tomcat" level="${CATALINA_LEVEL_IN_R13}" additivity="false">
<appender-ref ref="CATALINA_LOG"/>
</logger>
<root level="${ROOT_LEVEL_IN_R13}">
<appender-ref ref="CATALINA_LOG" />
</root>
</configuration>














网友评论