如何为 spring-boot 应用程序设置 logging.path?

新手上路,请多包涵

spring-boot 提供了几个 logging.* 可以应用于 application.properties 的设置,例如:

 logging.level.=DEBUG
logging.file=myfile.log
logging.path=d:/logs/

问题:生成了 myfile.log ,但是在类路径中!为什么 spring 不考虑我的绝对路径?

原文由 membersound 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 701
2 个回答

Spring Boot 文档 指出

默认情况下,Spring Boot 只会记录到控制台,不会写入日志文件。如果除了控制台输出之外还想写入日志文件,则需要设置 logging.file 或 logging.path 属性(例如在您的 application.properties 中)。

然后描述了 logging.filelogging.path 属性是如何工作的。你应该只设置一个。

如果设置了 logging.file ,它将写入该特定文件。文档说明

名称可以是确切位置或相对于当前目录。

因此,您可能正在写入当前目录,该目录恰好与您的类路径相同。

如果你设置 logging.path ,Spring Boot

spring.log 写入指定目录。名称可以是确切位置或相对于当前目录。

检查您的当前目录是否不是您的类路径,如果您不希望它们混合,并相应地调整 logging.filelogging.path

原文由 davidxxx 发布,翻译遵循 CC BY-SA 3.0 许可协议

对于 Spring boot v2.3.4 及更高版本肯定:它 不是 logging.file=…. ,它是 logging.file。 名字 =….

原文由 billst 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题