springboot学习笔记:4.logback日志配置

springboot中日志组件推荐使用logback;

由于springboot内置了logback,所以可以直接在application.properties中配置;如果要功能丰富些,则配置下logback-spring.xml。

一.在application.properties里配置的方式:

#保存在项目中的my.log文件中
logging.file=spring.log
#保存在系统指定路径下,如指定到F盘下的log文件夹中,默认生成名为spring.log的日志
logging.path=F:/log
#配置日志等级
logging.level.org.springframework.web=INFO

 二、配置logback-spring.xml

直接在application.properties中配置外,可以通过配置logback-spring.xml,定制更精细的配置;

步骤:

在 src/main/resources 下面创建logback-spring.xml (官方优先推荐使用-spring.*的配置方式)

根据不同环境(prod:生产环境,test:测试环境,dev:开发环境)来定义不同的日志输出,在 logback-spring.xml 中使用 springProfile 节点来定义,方法如下:

注意文件名称不是logback.xml,想使用spring扩展profile支持,要以logback-spring.xml命名

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/base.xml" />
    <logger name="org.springframework.web" level="INFO"/>
    <logger name="com.zjt" level="TRACE" />
    <!-- 测试环境+开发环境. 多个使用逗号隔开. -->
    <springProfile name="test,dev">
        <logger name="org.springframework.web" level="DEBUG"/>
        <logger name="com.zjt" level="DEBUG" />
    </springProfile>
    <!-- 生产环境. -->
    <springProfile name="prod">
        <logger name="org.springframework.web" level="ERROR"/>
        <logger name="com.zjt" level="ERROR" />
    </springProfile>
</configuration>

 

 

如果在 logback.xml 和 application.properties 中定义了相同的配置(如都配置了 org.springframework.web)但是输出级别不同,则实际上 application.properties 的优先级高于 logback.xml

 


三、总结

在Spring Boot 中记录日志只需两步: 

1、在 src/main/resources 下面创建logback.xml 文件,并按上面讲述的进行配置。 

或者使用最简单的方法在 application 配置文件中配置。 

2、在Java代码中创建实例,并在需要输出日志的地方使用。

// 在Java类中创建 logger 实例
private Logger logger = LoggerFactory.getLogger(this.getClass());
// 在方法中使用日志输出,如
publicvoidlogTest() {
    logger.debug("日志输出测试 Debug");
    logger.trace("日志输出测试 Trace");
    logger.info("日志输出测试 Info");
}

 

posted on 2018-01-21 21:28  zhaojiatao  阅读(779)  评论(0编辑  收藏  举报

导航