19.6. 日志记录消息内容


概述

您可以记录服务和消费者之间发送的消息的内容。例如,您可能想要记录在服务和消费者之间发送的 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 全局客户端:

    平台命令 +

    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.