log4j - Warbler config.java_classes 和 log4j.properties

标签 log4j jruby warbler

我正在用 warbler 打包一个 Rails 应用程序,并且我想要应用程序特定的日志记录。我已将 log4j 和 commons-loggin jar 添加到 WEB-INF/lib 目录,并且我想将 log4j.properties 添加到 WEB-INF/classes 目录。问题是,我还想要特定于环境的日志记录,因此我的登台/生产使用与我的开发不同的属性(即 INFO 而不是 DEBUG)。我不能只做:

config.java_classes = FileList["lib/log4j-#{RAILS_ENV}.properties"]

因为 Tomcat 似乎会查找特定文件 log4j.properties。有什么方法可以让 warbler 将此文件重命名为 log4j.properties 吗?或者是否有更好的机制用于特定于应用程序、特定于环境的日志记录?

最佳答案

最后的答案。 RAILS_ENV似乎在warbler中不起作用,但是查看docs在warble配置上,有一个包含rails.env的webxml属性,修改我的代码以拉取文件,如下所示:

config.java_classes = FileList["lib/properties/log4j.properties.#{config.webxml.rails.env}"]

效果非常好!

关于log4j - Warbler config.java_classes 和 log4j.properties,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1923392/

相关文章:

java - JRuby warbler "compiled"命令在 Tomcat 中产生 ClassCastException

java - 外部 log4j.xml 文件

jruby - 莺似乎使用了一个不理解 size_t 的不同 ffi

java - 如何阻止 RVM 干扰 JRuby

linux - 为什么 JRuby script.rb > out.txt 不捕获 Java 错误?

ruby - 如何制作同时针对 MRI 和 JRuby 的 gem?

jruby - 缺少logstash的jruby gem

java - SyslogAppender 不工作

java - 如何在项目中添加log4j(用于consol)(使用hibernate和spring)

java - slf4j 日志文件丢失