ActiveMQ嵌入式代理的自定义log4j配置

时间:2014-01-03 16:43:24

标签: spring log4j activemq

我有一个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>

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

如我在上面的评论中所述:

JVM属性是文件资源,而不是类路径,所以我的JVM参数应该是

file:D:\projects\my_app\log4j.xml

相关问题