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

时间:2015-04-21 06:12:29

标签: spring spring-boot

使用spring-boot 1.2.3.RELEASE。

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

logging.file=/var/log/app.log

但就我所知,according to the docs,我应该这样做:

logging.file=app.log
logging.path=/var/log

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

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

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

4 个答案:

答案 0 :(得分:43)

来自文档:

  

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

Spring boot会考虑filepath属性,而不是两者。

page包含filepath属性的所有组合。

答案 1 :(得分:2)

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

logging:
  path: /var/log/
  file: ${logging.path}app.log

结果,spring-boot会将日志保留在文件/var/log/app.log

答案 2 :(得分:0)

在application.properties中,只需使用以下变量

logging.file.path={--your file path--}

答案 3 :(得分:0)

使用 spring 2.4.5

这是工作

logging.file.path=./log/
logging.file.name=${logging.file.path}mylog.txt

logging.file.name=./log2/mylog.txt

总结

logging.file.path=.             # write logs to the current directory
logging.file.path=/home/logs    # write logs to /home/logs
logging.file.path=/mnt/logdir   # write logs to /mnt/logdir

对于 Spring Boot 1.x:设置 logging.path