搜索

19.6. 日志记录消息内容

download PDF

概述

您可以记录服务与消费者之间发送的消息内容。例如,您可能希望记录在服务和消费者之间发送的 SOAP 消息的内容。

配置消息内容日志记录

要记录在服务和消费者之间发送的消息,反之亦然,请完成以下步骤:

在端点中添加日志记录功能

添加日志记录功能您的端点配置,如 例 19.10 “在端点配置中添加日志记录” 所示。

例 19.10. 在端点配置中添加日志记录

<jaxws:endpoint ...>
  <jaxws:features>
    <bean class="org.apache.cxf.feature.LoggingFeature"/>
  </jaxws:features>
</jaxws:endpoint>

例 19.10 “在端点配置中添加日志记录” 中显示的 XML 示例允许记录 SOAP 信息。

将日志记录功能添加到消费者中

添加您的客户端配置功能,如 例 19.11 “将日志记录添加到客户端配置” 所示。

例 19.11. 将日志记录添加到客户端配置

<jaxws:client ...>
   <jaxws:features>
      <bean class="org.apache.cxf.feature.LoggingFeature"/>
    </jaxws:features>
</jaxws:client>

例 19.11 “将日志记录添加到客户端配置” 中显示的 XML 示例允许记录 SOAP 信息。

将日志记录设置为日志 INFO 级别信息

确保与服务关联的 logging.properties 文件被配置为记录 INFO 级别信息,如 例 19.12 “将日志记录级别设置为 INFO” 所示。

例 19.12. 将日志记录级别设置为 INFO

.level= INFO
java.util.logging.ConsoleHandler.level = INFO

日志记录 SOAP 消息

要查看 SOAP 消息的日志,请修改位于 InstallDir/samples/wsdl_first 目录中的 wsdl_first 示例应用程序,如下所示:

  1. 例 19.13 “Logging SOAP 消息的端点配置” 中显示的 jaxws:features 元素添加到位于 wsdl_first 示例目录中的 cxf.xml 配置文件:

    例 19.13. Logging SOAP 消息的端点配置

    <jaxws:endpoint name="{http://apache.org/hello_world_soap_http}SoapPort"
                    createdFromAPI="true">
      <jaxws:properties>
        <entry key="schema-validation-enabled" value="true" />
      </jaxws:properties>
      <jaxws:features>
        <bean class="org.apache.cxf.feature.LoggingFeature"/>
      </jaxws:features>
    </jaxws:endpoint>
  2. 这个示例使用默认 logging.properties 文件,该文件位于 InstallDir/etc 目录中。复制此文件并将其命名为 mylogging.properties
  3. mylogging.properties 文件中,编辑 .leveljava.util.logging.ConsoleHandler.level 配置属性,将日志记录级别改为 INFO,如下所示:

    .level= INFO
    java.util.logging.ConsoleHandler.level = INFO
  4. 使用 cxf.xml 文件和 mylogging.properties 文件中的新配置设置启动服务器,如下所示:

    平台命令 +

    Windows

    启动 java -Djava.util.logging.config.file=%CXF_HOME%\etc\mylogging.properties demo.hw.server.Server

    +

    UNIX

    java -Djava.util.logging.config.file=$CXF_HOME/etc/mylogging.properties demo.hw.server.Server &

    +

  5. 使用以下命令启动 hello world 客户端:

    平台命令 +

    Windows

    java -Djava.util.logging.config.file=%CXF_HOME%\etc\mylogging.properties demo.hw.client.Client .\wsdl\hello_world.wsdl

    +

    UNIX

    java -Djava.util.logging.config.file=$CXF_HOME/etc/mylogging.properties demo.hw.client.Client ./wsdl/hello_world.wsdl

    +

SOAP 消息记录到控制台。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.