美文网首页
Spring Boot自定义的Tomcat打印catalina和

Spring Boot自定义的Tomcat打印catalina和

作者: 站在海边看远方 | 来源:发表于2020-10-21 14:39 被阅读0次

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>

相关文章

网友评论

      本文标题:Spring Boot自定义的Tomcat打印catalina和

      本文链接:https://www.haomeiwen.com/subject/nmtemktx.html