我有一个非常标准的 Scalatra 项目,使用 Logback 进行日志记录。
继回溯手册 http://logback.qos.ch/manual/configuration.html我添加了一个logback-test.xml
对于我的开发配置(调试日志),同时维护生产logback.xml
.
然而,在开发过程中使用xsbt-web-plugin
要运行带有代码重新加载的容器,我的应用程序似乎只接收到logback.xml
.
我如何获得所需的行为?:
- 在开发模式下(
./sbt container:start
)应用程序使用logback-test.xml
- 当组装成拉链时使用SBT组装 https://github.com/sbt/sbt-assembly,排除测试配置。
目前这些似乎都不起作用。
你滥用了logback-test.xml
。它仅用于类似单元的测试,应放置在src/test/resources
(自动从产品中排除)。为了实现你想要的 - 你可以设置通往你的目标的路径logback-dev.xml
按系统属性:
javaOptions in container += "-Dlogback.configurationFile=/some/path/logback-dev.xml"
该路径可能是相对的。看,https://stackoverflow.com/a/26538449/1809978 https://stackoverflow.com/a/26538449/1809978
在我的实践中,我们不打包logback.xml
即使在产品中(它指向某个外部位置)也能够临时更改日志记录配置。
附:如果您还对从 sbt- assembly 中排除文件感兴趣 -this https://stackoverflow.com/a/27198444/1809978可能有帮助
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)