- 在【SpringBoot系列——集成logback】基础上做变动
- 首先将logback.xml改名成为logback-spring.xml
- logback-spring.xml修改代码如下
<springProperty scope="context" name="logPath" source="logging.path"/> <property name="LOG_PATH" value="${logPath}"/>
- 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
- 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:写的比较简单。估计也就自己能看懂了。)