0

我正在尝试将 p6spy (3.xx) 集成到我的项目中,并且在spy.properties文件中,我想指定

logfile=${user.home}/logs/spy-%d{yyyyMMdd}.log

或者至少

logfile=${user.home}/logs/spy.log 

到目前为止,我也无法做到,并且执行失败了FileNotFoundException

java.io.FileNotFoundException: ${user.home}/logs/spy.log (No such file or directory) 

Mine 是一个 Spring Boot 项目,合作者运行不同的操作系统。默认情况下,它是spy.log在项目根目录中创建文件,这不好。

是否可以像在 .properties 文件中那样指定相对路径?如果是,如何?

非常感谢!

4

1 回答 1

0

P6spy 不支持占位符。这就是 ${user.home} 无法识别的原因,您可以从我的库https://github.com/gavlyukovskiy/spring-boot-data-source-decorator中尝试 p6spy-spring-boot-starter,它将 p6spy 集成到 spring boot允许您在支持占位符的地方使用 application.properties/yml 而不是 spy.properties。

您应该将其放入您的应用程序属性中: decorator.datasource.p6spy.logging=file decorator.datasource.p6spy.log-file=${user.home}/logs/spy.log

但是,如果您想要轮换日志,最好使用 slf4j 并将自定义附加程序添加到您的日志库以仅捕获 p6spy 日志。

于 2018-03-09T21:39:15.520 回答