Spring boot—logback日志构建
2017-09-23 10:54
465 查看
spring boot是一款能够快速搭建应用的框架。它里面也包含了日志系统,例如我们在application.properties中加入
这样就能配置简单的日志系统。
但是这样所有的日志就跑到了一个文件中了,对日志的查看很不方便。
我们可以采用logback对日志做出一定的控制,比如我们按日期来输出日志,这样使工程更加简洁规范。
我们现在classpath下加入logback-spring.xml
我们可以看到上面有许多${}这种属性的提取,所以我们加入属性配置文件。
在文件的开头我们配置了不同环境下的属性配置文件,这样我们能根据不同的环境换不同的属性文件,使得我们不用再去动基本固定的log配置文件。
先在classpath下加入logback-dev.properties
再加入logback-prd
最后我们只需要在application.xml下加入属性映射
使springboot自动对属性配置文件进行不同环境下的调节。这样的配置使得工程更加方便调节。
logging.file=日志路径 logging.level.包名=级别
这样就能配置简单的日志系统。
但是这样所有的日志就跑到了一个文件中了,对日志的查看很不方便。
我们可以采用logback对日志做出一定的控制,比如我们按日期来输出日志,这样使工程更加简洁规范。
我们现在classpath下加入logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?> <configuration scan="true"> <!--生产环境下的属性文件--> <springProfile name="prd"> <property resource="logback-prd.properties"/> </springProfile> <!--开发下的属性文件--> <springProfile name="dev"> <property resource="logback-dev.properties"/> </springProfile> <!--配置日志--> <appender name="file-info" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!--拦截info等级的日志输出--> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>info</level> </filter> <Prudent>true</Prudent> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!--文件名--> <FileNamePattern> ${logback.dir}/${logback.info.filename}-%d{yyyy-MM-dd}.log </FileNamePattern> <!--最大保存时间--> <MaxHistory>${logback.maxhistory}</MaxHistory> </rollingPolicy> <layout class="ch.qos.logback.classic.PatternLayout"> <Pattern> %d{yyyy-MM-dd HH:mm:ss} -%msg%n </Pattern> </layout> <encoder> <!--输出格式--> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <!--包含基础的logback的配置文件--> <include resource="org/springframework/boot/logging/logback/base.xml"/> <!--将org.springframework.web包下的info等级日志进行输出--> <logger name="org.springframework.web" level="info"> <!--加入日志的配置--> <appender-ref ref="file-info" /> </logger> <!--将logback.controller.dir属性包下的info等级日志进行输出--> <logger name="${logback.controller.dir}" level="info"> <!--加入日志的配置--> <appender-ref ref="file-info" /> </logger> </configuration>
我们可以看到上面有许多${}这种属性的提取,所以我们加入属性配置文件。
<!--生产环境下的属性文件--> <springProfile name="prd"> <property resource="logback-prd.properties"/> </springProfile> <!--开发下的属性文件--> <springProfile name="dev"> <property resource="logback-dev.properties"/> </springProfile>
在文件的开头我们配置了不同环境下的属性配置文件,这样我们能根据不同的环境换不同的属性文件,使得我们不用再去动基本固定的log配置文件。
先在classpath下加入logback-dev.properties
#开发环境下的log配置 #控制层路径 logback.controller.dir=com.creat.bookfriend.controller #文件目录 logback.dir=D:/mylog/book_friend_logs/ #文件前缀名 logback.info.filename=/log-info #保存时长 logback.maxhistory=60 #编码格式 logback.charset=UTF-8
再加入logback-prd
#生产环境下的log配置 #控制层路径 logback.controller.dir=com.creat.bookfriend.controller #文件目录 logback.dir=${CATALINA_HOME}/logs/book_friend #文件前缀名 logback.info.filename=/log-info #保存时长 logback.maxhistory=60 #编码格式 logback.charset=UTF-8
最后我们只需要在application.xml下加入属性映射
#生产环境配置 spring.profiles.active=dev//或者prd
使springboot自动对属性配置文件进行不同环境下的调节。这样的配置使得工程更加方便调节。
相关文章推荐
- ELK(ElasticSearch, Logstash, Kibana)+ SuperVisor + Springboot + Logback 搭建实时日志分析平台
- 【spring boot logback】日志logback格式解析
- java鬼混笔记:springboot 10、springboot logback-spring.xml简单的日志配置
- Spring Boot 整合 logback 实现日志管理
- SpringBoot实践之---默认日志logback配置解析
- springBoot---配置 ---logback日志
- 54. spring boot日志升级篇—logback【从零开始学Spring Boot】
- SpringBoot学习——使用logback配置日志
- (六)Spring Boot之日志配置-logback和log4j2
- Spring Boot 日志配置(LogBack,LockBack异步日志)
- spring boot 使用logback日志系统的详细说明
- 从零开始学spring-boot(3)-集成logback日志
- (03) SpringBoot 日志文件使用(logback)
- Spring boot使用logback实现日志的记录
- Spring Boot基础教程5-日志配置-logback和log4j2
- 详解Spring Boot下使用logback 记录多个文件日志
- springboot整合logback日志
- SpringBoot+Logback+Sentry(日志监控平台)
- springboot中logback打印日志
- spring boot 日志配置 logback-spring.xml