本篇文章小编给大家分享一下解决springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹问题方法,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
apppcation.properties
加入以下配置
#logback home logging.path=D:/logs/esb-producer
logback.xml
INFO ${LOG_PATH}/info.log ${LOG_PATH}/info-%d{yyyyMMdd}.log.%i 20MB 2 %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -%msg%n
重点是这段
${LOG_PATH:-}用法
首先LOG_PATH是什么它不是你apppcation.properties配置的 logging.path key, LOG_PATH 是logging.path的系统环境变量(请参考下图)直接引用在,不要直接引用logging.path 是引用不到的
LOG_PATH = D:/logs/esb-producer
-表示分割符,后面的参数是默认路径
.表示当前项目根路径也可以是/usr/local/log…举一反三
so ${LOG_PATH:-.} =${D:/logs/esb-producer-当前项目根路径}
这种方式有可能会生成俩个日志路径 一个是 D:/logs/esb-producer 另一个是在当前项目根路径生成的日志 因为spring比logback先启动 所以会在项目更目录生成一个spring的日志 这个就比较恶心了 我想把日志输出到一起怎么做呢
${LOG_PATH:- }默认路径设置成空格这样就不会在你的项目根目录生成spring日志文件了(会在你服务器根目录生成)接下来系统日志就会输出到你的自定义目录了
logback配置