为什么不用spring-boot监听logging.path变量?

Sho*_*orn 29 spring spring-boot

使用spring-boot 1.2.3.RELEASE.

我可以让spring-boot登录到特定目录的唯一方法是设置"log.file"属性,如下所示:

logging.file=/var/log/app.log
Run Code Online (Sandbox Code Playgroud)

但据我所知,我所知,我应该这样做:

logging.file=app.log
logging.path=/var/log
Run Code Online (Sandbox Code Playgroud)

但它似乎没有监听logging.path属性,它只是将文件写入当前目录.

文档是错误的还是有一些非常明显我在这里缺失的东西?

此外,使用此设置,它仍然可以正确滚动日志,对吧?

Mit*_*hun 44

从文档:

如果除了控制台输出之外还要编写日志文件,则需要设置logging.file或logging.path属性

Spring引导考虑file或者path属性,而不是两者.

页面包含所有组合filepath属性.

  • ...但为什么我们不能更改文件名和路径? (12认同)
  • 这是非常不直观的,只有通过说明"下表显示如何一起使用日志.*属性"的文档暗示两种方法协同工作,才会进一步引起混淆. (7认同)
  • `logging.path` 现已弃用。Spring引入了“logging.file.path”以避免混淆 (2认同)

Zoo*_*All 6

变量pathfile可以通过以下方式同时使用(application.yml):

logging:
  path: /var/log/
  file: ${logging.path}app.log
Run Code Online (Sandbox Code Playgroud)

因此,spring-boot 会在文件中保留一个日志 /var/log/app.log