10.7. ログフォーマッターの設定


ログフォーマッターは、ハンドラーでのログメッセージの形式を定義します。

logging サブシステムを使用すると、次のタイプのログフォーマッターを設定できます。

10.7.1. パターンフォーマッターの設定

ログハンドラー全体でログメッセージをフォーマットするために使用する、名前付きパターンフォーマッターを作成できます。

管理 CLI を使用して、JBoss EAP でパターンフォーマッターを設定できます。または、管理コンソールから Configuration > Subsystems > Logging > Configuration に移動し、View をクリックして Formatter を選択し、Pattern Formatter オプションを選択して設定することもできます。

重要

このログフォーマッターをログプロファイル用に設定する場合は、/subsystem=logging/ ではなく、/subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/ でコマンドを開始します。

さらに、マネージドドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME を付けます。

前提条件

  • JBoss EAP が実行している。
  • 管理 CLI にアクセスできる。

手順

  1. 次のコマンドを使用して、パターンフォーマッターを作成します。

    /subsystem=logging/pattern-formatter=PATTERN_FORMATTER_NAME:add(pattern=PATTERN)
    Copy to Clipboard Toggle word wrap

    パターンフォーマッターを定義する場合、ログメッセージをフォーマットするためのパターン文字列を指定します。たとえば、デフォルトの設定はサーバーログメッセージのログフォーマッター文字列として %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n を使用します。

    2016-03-18 15:49:32,075 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
    Copy to Clipboard Toggle word wrap
  2. 次のコマンドを使用して、パターンフォーマッターのカラーマップを設定します。

    /subsystem=logging/pattern-formatter=PATTERN_FORMATTER_NAME:write-attribute(name=color-map,value="LEVEL:COLOR,LEVEL:COLOR")
    Copy to Clipboard Toggle word wrap

    また、カラーマップを定義してログレベルごとに色を割り当てることもできます。形式は LEVEL:COLOR のコンマ区切りリストです。

    • 有効なレベル: finestfinerfineconfigtracedebuginfowarningwarnerrorfatalsevere
    • 有効な色: blackgreenredyellowbluemagentacyanwhitebrightblackbrightredbrightgreenbrightbluebrightyellowbrightmagentabrightcyanbrightwhite

10.7.2. JSON ログフォーマッターの設定

JSON 形式でログメッセージをフォーマットする JSON ログフォーマッターを作成できます。

管理 CLI を使用して、JBoss EAP で JSON ログフォーマッターを設定できます。または、管理コンソールから Configuration > Subsystems > Logging > Configuration に移動し、View をクリックして Formatter を選択し、JSON Formatter オプションを選択して設定することもできます。

重要

このログフォーマッターをログプロファイル用に設定する場合は、/subsystem=logging/ ではなく、/subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/ でコマンドを開始します。

さらに、マネージドドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME を付けます。

前提条件

  • JBoss EAP が実行している。
  • 管理 CLI にアクセスできる。

手順

  1. JSON ログフォーマッターを追加します。

    /subsystem=logging/json-formatter=JSON_FORMATTER_NAME:add(pretty-print=true, exception-output-type=formatted)
    Copy to Clipboard Toggle word wrap

    予想される出力

    {
        "timestamp": "2018-10-18T13:53:43.031-04:00",
        "sequence": 62,
        "loggerClassName": "org.jboss.as.server.logging.ServerLogger_$logger",
        "loggerName": "org.jboss.as",
        "level": "INFO",
        "message": "WFLYSRV0025: JBoss EAP 8.1.0.GA (WildFly Core 21.0.5.Final-redhat-00001) started in 5227ms - Started 317 of 556 services (343 services are lazy, passive or on-demand),
        "threadName": "Controller Boot Thread",
        "threadId": 22,
        "mdc": {
        },
        "ndc": "",
        "hostName": "localhost.localdomain",
        "processName": "jboss-modules.jar",
        "processId": 7461
    }
    Copy to Clipboard Toggle word wrap
  2. 次のコマンドを使用して、Logstash JSON ログフォーマッターを追加します。

    /subsystem=logging/json-formatter=logstash:add(exception-output-type=formatted, key-overrides=[timestamp="@timestamp"], meta-data=[@version=1])
    Copy to Clipboard Toggle word wrap
    注記

    JSON ログフォーマッター出力キーを変更し、静的メタデータを追加できます。JSON ログフォーマッターの主な目的は、ログメッセージを JSON 形式でフォーマットすることです。Logstash はこの JSON 出力を消費し、@timestamp および @version フィールドを検索します。以下の例では、Logstash のメッセージをフォーマットする JSON ログフォーマッターを作成します。

    JSON フォーマッター属性は次のように使用できます。

    • key-overrides 属性は、定義されたキーの名前をオーバーライドします。
    • 例外をオブジェクトとしてフォーマットするには、exception-output-type 属性を formatted に設定します。
    • exception-output-type 属性を detailed に設定して、例外スタックトレースを追加します。
    • exception-output-type 属性を detailed-and-formatted に設定して、例外をオブジェクトとしてフォーマットし、スタックトレースを追加します。
    • meta-data 属性を使用して、ログレコードにメタデータを追加します。

10.7.3. XML ログフォーマッターの設定

XML 形式でログメッセージをフォーマットする XML ログフォーマッターを作成できます。

管理 CLI を使用して、JBoss EAP で XML ログフォーマッターを設定できます。または、管理コンソールから Configuration Subsystems Logging Configuration に移動し、View をクリックして Formatter を選択し、XML Formatter オプションを選択して設定することもできます。

重要

このログフォーマッターをログプロファイル用に設定する場合は、/subsystem=logging/ ではなく、/subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/ でコマンドを開始します。

さらに、マネージドドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME を付けます。

前提条件

  • JBoss EAP が実行している。
  • 管理 CLI にアクセスできる。

手順

  1. XML ログフォーマッターを追加します。

    /subsystem=logging/xml-formatter=XML_FORMATTER_NAME:add(pretty-print=true, exception-output-type=detailed-and-formatted)
    Copy to Clipboard Toggle word wrap

    予想される出力

    <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: {ProductCurrentVersionExamples} (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>
    Copy to Clipboard Toggle word wrap
  2. 次のコマンドを使用して、キーオーバーライド 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)
    Copy to Clipboard Toggle word wrap

    XML フォーマッター属性は次のように使用できます。

    • key-overrides 属性は、定義されたキーの名前をオーバーライドします。
    • 例外をオブジェクトとしてフォーマットするには、exception-output-type 属性を formatted に設定します。
    • exception-output-type 属性を detailed に設定して、例外スタックトレースを追加します。
    • exception-output-type 属性を detailed-and-formatted に設定して、例外をオブジェクトとしてフォーマットし、スタックトレースを追加します。
    • meta-data 属性を使用して、ログレコードにメタデータを追加します。

10.7.4. カスタムログフォーマッターの設定

ログハンドラー全体でログメッセージをフォーマットするために使用する、カスタムログフォーマッターを作成できます。

管理 CLI を使用して、JBoss EAP でカスタムログフォーマッターを設定できます。または、管理コンソールから Configuration > Subsystems > Logging > Configuration に移動し、View をクリックして Formatter を選択し、Custom Formatter オプションを選択して設定することもできます。

重要

このログフォーマッターをログプロファイル用に設定する場合は、/subsystem=logging/ ではなく、/subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/ でコマンドを開始します。

さらに、マネージドドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME を付けます。

前提条件

  • JBoss EAP が実行している。
  • 管理 CLI にアクセスできる。

手順

  1. 次のコマンドを使用して、カスタムログフォーマッターを追加します。

    /subsystem=logging/custom-formatter=CUSTOM_FORMATTER_NAME:add(class=CLASS_NAME, module=MODULE_NAME)
    Copy to Clipboard Toggle word wrap
    注記

    カスタムログフォーマッターを追加する場合は、フォーマッターの Java クラスとそれが含まれる JBoss EAP モジュールを指定します。このクラスは java.util.logging.Formatter を拡張する必要があります。カスタムロガーが含まれる モジュールを作成した ことを確認してください。作成されていない場合、このコマンドは失敗します。

  2. 次のコマンドを使用して、ログフォーマッターのプロパティーを設定します。

    /subsystem=logging/custom-formatter=CUSTOM_FORMATTER_NAME:write-attribute(name=properties.PROPERTY_NAME,value=PROPERTY_VALUE)
    Copy to Clipboard Toggle word wrap

    setter メソッドを使用してプロパティーにアクセスできなければなりません。

  3. 次のコマンドを使用して、カスタムフォーマッターをログハンドラーに割り当てます。

    /subsystem=logging/periodic-rotating-file-handler=FILE_HANDLER_NAME:write-attribute(name=named-formatter, value=CUSTOM_FORMATTER_NAME)
    Copy to Clipboard Toggle word wrap

    このコマンドは、periodic rotating ファイルハンドラーが使用するカスタムフォーマッターを割り当てます。

    以下の例は、カスタム XML フォーマッターを設定します。org.jboss.logmanager モジュールに提供される java.util.logging.XMLFormatter クラスを使用し、console ログハンドラーに割り当てます。

    /subsystem=logging/custom-formatter=custom-xml-formatter:add(class=java.util.logging.XMLFormatter, module=java.logging)
    /subsystem=logging/console-handler=CONSOLE:write-attribute(name=named-formatter, value=custom-xml-formatter)
    Copy to Clipboard Toggle word wrap

    予想される出力

    <record>
      <date>2016-03-23T12:58:13</date>
      <millis>1458752293091</millis>
      <sequence>93963</sequence>
      <logger>org.jboss.as</logger>
      <level>INFO</level>
      <class>org.jboss.as.server.BootstrapListener</class>
      <method>logAdminConsole</method>
      <thread>22</thread>
      <message>WFLYSRV0051: Admin console listening on http://%s:%d</message>
      <param>127.0.0.1</param>
      <param>9990</param>
    </record>
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat