我有一个Spring / Struts / Hibernate应用程序并部署到WebSphere。我为应用程序设置了log4j.xml,效果很好。我已经在activemq-5.8.0-all.jar中添加并使用了嵌入式代理。
<amq:broker useJmx="false" persistent="false">
<amq:transportConnectors>
<amq:transportConnector uri="tcp://localhost:61818" />
</amq:transportConnectors>
</amq:broker>
由于我添加了activemq jar(在WEB-INF / lib目录中)并使用嵌入式代理,我认为activemq内部日志记录机制首先在类路径上加载,我的应用程序日志记录不再有效。
如何使用我使用嵌入式代理设置的自定义log4j日志记录(而不是activemq jar中包含的日志记录)?
我已经尝试在websphere中添加一个jvm参数来指向我正在使用的log4j.xml,但它仍然没有找到。
log4j.configuration=D:\projects\my_app\log4j.xml
我还尝试在代理设置中使用loggingBrokerPlugin来关闭日志记录。
<amq:broker useJmx="false" persistent="false">
<amq:plugins>
<amq:loggingBrokerPlugin logAll="false" logConnectionEvents="false" />
</amq:plugins>
<amq:transportConnectors>
<amq:transportConnector uri="tcp://localhost:61818" />
</amq:transportConnectors>
</amq:broker>
非常感谢任何帮助!
答案 0 :(得分:0)
如我在上面的评论中所述:
JVM属性是文件资源,而不是类路径,所以我的JVM参数应该是
file:D:\projects\my_app\log4j.xml