11.5.8. カスタムログハンドラーの設定
ここでは、管理 CLI を使用してカスタムログハンドラーを設定する方法を説明します。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Custom Handler と選択すると、カスタムログハンドラーを設定することができます。
カスタムログハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
カスタムログハンドラーの追加
カスタムログハンドラーを追加する場合、ハンドラーの Java クラスとハンドラーが含まれる JBoss EAP モジュールを指定する必要があります。クラスは java.util.logging.Handler
を拡張する必要があります。
すでに、カスタムロガーが含まれる モジュールが作成 されている必要があります。 作成されていないと、このコマンドの実行に失敗します。
/subsystem=logging/custom-handler=CUSTOM_HANDLER_NAME:add(class=CLASS_NAME,module=MODULE_NAME)
カスタムログハンドラーの設定
必要性に応じて、以下のカスタムログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できるカスタムログハンドラー属性の完全リストと説明は、カスタムログハンドラーの属性 を参照してください。
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/custom-handler=CUSTOM_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
プロパティーを設定します。
ログハンドラーに必要なプロパティーを設定します。setter メソッドを使用してプロパティーにアクセスできなければなりません。
/subsystem=logging/custom-handler=CUSTOM_HANDLER_NAME:write-attribute(name=properties.PROPERTY_NAME,value=PROPERTY_VALUE)
エンコーディングを設定します。
ハンドラーのエンコーディングを設定します (例:
utf-8
)。/subsystem=logging/custom-handler=CUSTOM_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
ログフォーマッターを設定します。
ヘッダーの書式設定文字列を設定します。たとえば、デフォルトの書式設定文字列は
%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n
です。FORMAT
の値は必ず引用符で囲んでください。/subsystem=logging/custom-handler=CUSTOM_HANDLER_NAME:write-attribute(name=formatter,value=FORMAT)
注記保存されたフォーマッター
を参照する場合は named-formatter 属性を使用します。フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/custom-handler=CUSTOM_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
カスタムログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは、カスタムログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=CUSTOM_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Size ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=CUSTOM_HANDLER_NAME)
カスタムログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/custom-handler=CUSTOM_HANDLER_NAME:remove