【问题标题】:Mule: how to log SOAP payloads when using WS Consumer componentMule:使用 WS Consumer 组件时如何记录 SOAP 有效负载
【发布时间】:2016-03-31 18:10:44
【问题描述】:

我正在使用 WS Consumer 组件从 Mule 流中调用外部 WS。 我想记录 WS Consumer 发送/接收的请求和响应的 SOAP 有效负载。 我怎样才能做到这一点?

【问题讨论】:

    标签: mule mule-component


    【解决方案1】:

    此问题已针对 MULE-7501 票证下的 HTTP 传输得到解决: https://www.mulesoft.org/jira/browse/MULE-7501

    因此,需要在log4j2.xml中添加以下行:

    <AsyncLogger name="org.mule.module.http.internal.HttpMessageLogger" level="DEBUG"/>
    

    不幸的是,当 WS Consumer 使用 HTTP 以外的传输(例如 JMS)时,它不起作用。

    更新:

    使用 WS Consume 记录 SOAP 负载的更正确方法是按照以下描述配置 CXF 拦截器: http://cxf.apache.org/docs/configuration.html

    这种方式适用于非 http 传输。

    【讨论】:

      【解决方案2】:

      尝试在 log4j2.xml 或 log4j.xml 中添加此日志处理程序,

          <AsyncLogger name="org.glassfish.grizzly" level="INFO" />
          <AsyncLogger name="org.asynchttpclient" level="INFO" />
          <AsyncLogger name="sun.net.www.protocol.http.HttpURLConnection.level" level="ALL" />
          <AsyncLogger name="org.apache.http.wire" level="ALL" />
          <AsyncLogger name="org.apache.http.client" level="ALL" />
          <AsyncLogger name="org.apache.xerces.parsers.SAXParser" level="ALL" />
          <AsyncLogger name="com.ning.http" level="ALL" />
      

      【讨论】:

        猜你喜欢
        • 2012-06-21
        • 1970-01-01
        • 2015-01-16
        • 1970-01-01
        • 1970-01-01
        • 2014-02-12
        • 1970-01-01
        • 1970-01-01
        • 2012-09-18
        相关资源
        最近更新 更多