如何在karaf 3.0.3上禁用rootLogger for cxf logging功能

时间:2015-03-05 15:06:36

标签: logging cxf karaf

我在karaf 3.0.3中的osgi包中使用cxf日志记录功能。 (cxf版本是3.0.3)

在我的蓝图中,我定义了cxf日志记录功能

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
    xmlns:cxf="http://cxf.apache.org/blueprint/core" 
    xmlns:jaxws="http://cxf.apache.org/blueprint/jaxws">

    <cxf:bus>
        <cxf:features>
            <cxf:logging />
        </cxf:features>
    </cxf:bus>
...

在我的log4j配置中,我为rootLogger和cxf消息定义了一个logger和appender。这很好用:

log4j.rootLogger=INFO, out
log4j.logger.org.apache.cxf.services=INFO, cxf_ws_messages_all

问题是,cxf将所有消息记录到我的&#34; cxf_ws_messages_all&#34; appender and in&#34; out&#34;附加目的地。有谁知道如何配置cxf日志记录不使用rootLogger?

使用xcf日志记录功能时出现的第二个问题是&#34; out&#34; appender也会获得调试日志。我能解决这个问题的唯一方法是设置&#34; out&#34;的阈值。信息的附加信息:

log4j.appender.out.Threshold=INFO

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

你尝试过关闭可加性吗?

log4j.additivity.org.apache.cxf.services=false