日誌配置目錄:
在properties文件中添加配置:
logging.config = classpath:log/logback-local.xml
文件配置:
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true">
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<!-- The FILE and ASYNC appenders are here as examples for a production configuration -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/payment/payment.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 每小時滾動文件 -->
<fileNamePattern>logs/payment/payment.%d{yyyy-MM-dd_HH}.%i.log</fileNamePattern>
<maxHistory>5</maxHistory>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<charset>utf-8</charset>
<pattern>%date %level [%thread] %logger{36} [%file : %line] %msg%n</pattern>
</encoder>
</appender>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
</Pattern>
</layout>
</appender>
<logger name="com.hand.hcf" level="DEBUG"/>
<logger name="javax.activation" level="ERROR"/>
<logger name="javax.mail" level="ERROR"/>
<logger name="javax.xml.bind" level="ERROR"/>
<logger name="ch.qos.logback" level="ERROR"/>
<logger name="com.codahale.metrics" level="ERROR"/>
<logger name="com.ryantenney" level="ERROR"/>
<logger name="com.sun.xml.internal.bind" level="ERROR"/>
<logger name="com.zaxxer" level="ERROR"/>
<logger name="io.undertow" level="ERROR"/>
<logger name="org.apache" level="ERROR"/>
<logger name="org.apache.catalina.startup.DigesterFactory" level="OFF"/>
<logger name="org.bson" level="ERROR"/>
<logger name="org.hibernate.validator" level="ERROR"/>
<logger name="org.hibernate" level="ERROR"/>
<logger name="org.hibernate.ejb.HibernatePersistence" level="OFF"/>
<logger name="org.springframework" level="WARN"/>
<logger name="org.springframework.web" level="ERROR"/>
<logger name="org.springframework.security" level="ERROR"/>
<logger name="org.springframework.cache" level="ERROR"/>
<logger name="org.thymeleaf" level="ERROR"/>
<logger name="org.xnio" level="ERROR"/>
<logger name="springfox" level="ERROR"/>
<logger name="sun.rmi" level="ERROR"/>
<logger name="liquibase" level="ERROR"/>
<logger name="sun.rmi.transport" level="ERROR"/>
<logger name="com.netflix" level="ERROR"/>
<logger name="io.lettuce.core" level="ERROR"/>
<logger name="io.netty.util" level="INFO"/>
<logger name="com.ctrip.framework.apollo" level="INFO"/>
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<root level="DEBUG">
<appender-ref ref="FILE"/>
</root>
</configuration>