logback是spring boot中的默认日志记录框架,spring推荐使用logback-spring.xml来做配置,loback-spring.xml可以放置到src\main\resources目录下。
通过在logback-spring.xml中配置不同的pfofile,可以实现不同的profile不同的日志记录方式,下面是一个例子。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| <?xml version="1.0" encoding="UTF-8"?> <configuration>
<appender name="out" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n </pattern> </encoder> </appender> <springProfile name="development"> <appender name="target-file" class="ch.qos.logback.core.FileAppender"> <file>target/tutorial.log</file> <encoder> <pattern>%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <logger name="cn.devmgr" level="TRACE" /> <root level="WARN"> <appender-ref ref="target-file" /> <appender-ref ref="out" /> </root> </springProfile>
<springProfile name="production"> <appender name="logfile" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>/web/logs/tutorial.%d{yyyy-MM-dd}.log </fileNamePattern> </rollingPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <logger name="cn.devmgr" level="INFO" /> <logger name="org.springframework" level="WARN" /> <root level="WARN"> <appender-ref ref="logfile" /> <appender-ref ref="out" /> </root> </springProfile> </configuration>
|
需要注意:有logback配置文件后,application.yml中的日志配置部分就失效了。