SpringBoot 集成logback——分环境配置日志路径

  1. 首先将logback.xml改名成为logback-spring.xml
  2. logback-spring.xml修改代码如下
    <springProperty scope="context" name="logPath" source="logging.path"/>
    <property name="LOG_PATH" value="${logPath}"/>

     

  3.  application.yml配置如下(我这边默认配置dev)
    # 环境配置(dev/test/pre/prod)
    spring:
      profiles:
        active: dev
    
    # 日志配置
    logging:
      path: ./logs
      config: classpath:logback-spring.xml
      level:
        root: INFO
        # 设置 MyBatis 执行 sql 时打印具体的 Sql 语句
        com.hahashujia.logback: DEBUG
        org.mybatis: DEBUG

     

  4.  application-dev.yml
    logging:
      path: E:/hadoop/logs

     

这样启动项目就可以了,

这样配置的优点就不用说了当然是     不同环境配置路径不同,项目启动读取的路径也就不一样了。

同样也有个弊端:spring会优先加载项目中或者jar包中的logback.xml并读取里边的路径(/workspace/api-default.log),然后再加载application.yml之后再加载我们的日志文件logback-spring.xml,项目部署在服务器上运行一般不会用root这种权限很大的用户执行,权限小的会对logback.xml里的路径可能会没有操作权限就会导致项目启动失败。

(ps:写的比较简单。估计也就自己能看懂了。)

 

发布了21 篇原创文章 · 获赞 14 · 访问量 7万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章