springboot 对 logback 的支持是非常好的, 不需要任何配置, 只需要在 resource 下加 logback.xml 就可以实现功能
直接贴代码:
- [html] view plain copy print?
- <?xml version="1.0" encoding="UTF-8"?>
- <configuration scan="true" scanPeriod="60 seconds">
- <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>%d{yyyy-M-d HH:mm:ss} %t %p %m%n</pattern>
- </encoder>
- </appender>
- <appender name="springboot"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <!-- <Encoding>UTF-8</Encoding> -->
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <FileNamePattern>logs/logback/springboot_%d{yyyy-M-d}.log
- </FileNamePattern>
- <MaxHistory>10</MaxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>%d{yyyy-M-d HH:mm:ss} %t %p %m%n</pattern>
- </encoder>
- </appender>
- <appender name="smile"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
- <FileNamePattern>logs/logback/smile_%d{yyyy-M-d}.log
- </FileNamePattern>
- <MaxHistory>10</MaxHistory>
- </rollingPolicy>
- <encoder>
- <pattern>%d{yyyy-M-d HH:mm:ss} %t %p %m%n</pattern>
- </encoder>
- </appender>
- <logger name="org.springframework.boot" level="debug"
- additivity="false">
- <appender-ref ref="springboot" />
- </logger>
- <!-- name 包必须能够扫描到所以类, 包括启动类 -->
- <logger <span style="color:#ff0000;">name="com.smile"</span> level="debug" additivity="false">
- <appender-ref ref="smile" />
- </logger>
- <root level="info">
- <appender-ref ref="stdout" />
- </root>
- </configuration>
其中值得注意的是: 你配置文件中的包名要能够扫描到你的所有类, 包括启动类
否则, 你的日志文件是生成了, 但是不会向里面写入内容
启动程序打印日志, 日志成功生成:
来源: http://www.bubuko.com/infodetail-2490458.html