在实际开发中日志是很重要的一部分,可以根据日志查错,可以统计等等。有时候我们会把日志记录在单独的日志文件里,还需要按大小,日期等分别记录,springboot启动的时候是将日志打印在控制台的,但是springboot是支持用户log配置的。
整合logback
1.添加相应的依赖(本项目承接与上文的springboot整合redis工程项目)
不是web环境的:
spring-boot-starter-logging
web环境添加:
org.springframework.boot
spring-boot-starter-web
本文以web环境为例
2.在resources文件夹下新建logback-spring.xml,logback.xml等,官方推荐使用logback-spring.xml,这样可以使用springboot的扩展功能。
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<include resource="org/springframework/boot/logging/logback/console-appender.xml"/>
<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}/}spring.log}"/>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<pattern>${FILE_LOG_PATTERN}</pattern>
</encoder>
<file>${LOG_FILE}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>14</maxHistory>
</rollingPolicy>
</appender>
<root level="INFO">
<appender-ref ref="FILE"/>
<springProfile name="dev">
<appender-ref ref="CONSOLE"/>
</springProfile>
</root>
<logger name="org.springframework.web" level="INFO"/>
</configuration>
xml有了还有配置log日志文件的生成目录,配置application.properties
logging.file=${user.home}/logs/springboot-redis/springboot-redis.log
启动项目,就会发现控制台没有日志打印,日志打印在本地的springboot-redis.log
本地开发调试的时候还是要把日志打印到控制台的,配置的时候有一句
那么这样就好办了,很简单只需要在启动的时候加入参数:
再次启动日志就打印在控制台了,在生产环境,开发环境不同:
代码:
https://gitee.com/chenghao842822530/springbootdemo
springboot整合redis:http://blog.csdn.net/helloword_monkey/article/details/78813211