11.7.3. 配置 XML 日志格式

您可以创建一个 XML 日志格式器,以将日志消息格式化为 XML。

重要

如果您要为日志记录配置集配置此日志格式器,则命令的开头为 /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/ 而不是 /subsystem=logging/

此外,如果您在受管域中运行,请在命令前加上 /profile=PROFILE_NAME

添加 XML 日志格式
/subsystem=logging/xml-formatter=XML_FORMATTER_NAME:add(pretty-print=true, exception-output-type=detailed-and-formatted)

这会创建类似于下方所示的日志消息。

<record>
    <timestamp>2018-10-18T13:55:53.419-04:00</timestamp>
    <sequence>62</sequence>
    <loggerClassName>org.jboss.as.server.logging.ServerLogger_$logger</loggerClassName>
    <loggerName>org.jboss.as</loggerName>
    <level>INFO</level>
    <message>WFLYSRV0025: JBoss EAP 7.3.0.GA (WildFly Core 10.0.0.Final-redhat-20190924) started in 6271ms - Started 495 of 679 services (331 services are lazy, passive or on-demand)</message>
    <threadName>Controller Boot Thread</threadName>
    <threadId>22</threadId>
    <mdc>
    </mdc>
    <ndc></ndc>
    <hostName>localhost.localdomain</hostName>
    <processName>jboss-modules.jar</processName>
    <processId>7790</processId>
</record>
添加密钥覆盖 XML 日志格式
/subsystem=logging/xml-formatter=XML_FORMATTER_NAME:add(pretty-print=true, print-namespace=true, namespace-uri="urn:custom:1.0", key-overrides={message=msg, record=logRecord, timestamp=date}, print-details=true)

您可以使用 XML 格式属性,如下所述:

  • key-overrides 属性可用于覆盖定义的键的名称。
  • 例外可以通过将 exception-output-type 属性设置为 格式化来格式化 为对象。
  • 可以通过将 exception-output-type 属性设置为 detailed 来包含异常堆栈追踪。
  • 通过将 exception-output-type 设置为 详细和格式,可以包含例外,作为对象和堆栈追踪。
  • 可以使用 meta-data 属性将元数据添加到日志记录中。

有关 XML 格式器属性的更多信息,请参阅 XML 日志格式条件属性

您还可以使用管理控制台配置 XML 日志格式器:

  1. 在浏览器中打开管理控制台。
  2. 选择 ConfigurationSubsystemsLogging
  3. 选择 Configuration,然后单击 View
  4. 选择 Formatter,然后选择 XML Formatter 选项。