我正在尝试将p6spy(3.x.x)集成到我的项目中,而在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文件中指定相关路径,就像我想要的那样?如果是,怎么样?
非常感谢!
答案 0 :(得分:0)
P6spy不支持占位符。这就是$ {user.home}无法识别的原因,您可以尝试从我的库https://github.com/gavlyukovskiy/spring-boot-data-source-decorator中将p6spy集成到Spring引导中的p6spy-spring-boot-starter,允许您使用application.properties/yml,而不是支持占位符spy.properties。
您应该将它放入您的应用程序属性中:
decorator.datasource.p6spy.logging=file
decorator.datasource.p6spy.log-file=${user.home}/logs/spy.log
但是如果你想要旋转日志,最好使用slf4j并在你的日志库中添加自定义appender以仅捕获p6spy日志。