11.5. ログハンドラーの設定
ログハンドラーはキャプチャーしたメッセージの記録方法を定義します。以下の項を参照して必要なログハンドラーのタイプを設定してください。
11.5.1. Console ログハンドラーの設定
ここでは、管理 CLI を使用して Console ログハンドラーを設定する方法を説明します。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Console Handler と選択すると Console ログハンドラーを設定することができます。
Console ログハンドラーを設定するために実行する主なタスクは次のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
Console ログハンドラーの追加
/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:add
Console ログハンドラーの設定
必要性に応じて、以下の Console ログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる Console ログハンドラー属性の完全リストと説明は、Console ログハンドラーの属性 を参照してください。
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
ターゲットを設定します。
ハンドラーのターゲットを設定します。値は
System.out
、System.err
、console
のいずれかになります。デフォルトSystem.out
です。/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:write-attribute(name=target,value=TARGET)
エンコーディングを設定します。
ハンドラーのエンコーディングを設定します (例:
utf-8
)。/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
ログフォーマッターを設定します。
ヘッダーの書式設定文字列を設定します。たとえば、デフォルトの書式設定文字列は
%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n
です。FORMAT
の値は必ず引用符で囲んでください。/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:write-attribute(name=formatter,value=FORMAT)
注記保存されたフォーマッター
を参照する場合は named-formatter 属性を使用します。自動フラッシュを設定します。
毎回書き込みの後に自動的にフラッシュするかどうかを設定します。デフォルト値は
true
です。/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:write-attribute(name=autoflush,value=AUTO_FLUSH)
フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
Console ログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは Console ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=CONSOLE_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Console ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=CONSOLE_HANDLER_NAME)
Console ログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/console-handler=CONSOLE_HANDLER_NAME:remove
11.5.2. File ログハンドラーの設定
ここでは、管理 CLI を使用して File ログハンドラーを設定する方法を説明します。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → File Handler と選択すると、File ログハンドラーを設定することができます。
File ログハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
File ログハンドラーの追加
File ログハンドラーを追加する場合、path
および relative-to
属性で設定される file
属性を使用してファイルパスを指定する必要があります。path
属性を使用して名前を含むログのファイルパスを設定します (例: my-log.log
)。オプションで relative-to
属性を使用すると path
が名前付きのパスと相対的になるよう設定できます (例: jboss.server.log.dir
)。
/subsystem=logging/file-handler=FILE_HANDLER_NAME:add(file={path=FILE_PATH,relative-to=RELATIVE_TO_PATH})
File ログハンドラーの設定
必要性に応じて、以下の File ログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる File ログハンドラー属性の完全リストと説明は、File ログハンドラーの属性 を参照してください。
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/file-handler=FILE_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
追加動作を設定します。
デフォルトでは、サーバーが再起動されたときに JBoss EAP はログメッセージを同じファイルに追加します。サーバーの再起動時にファイルを上書きする場合は
append
属性をfalse
に設定します。/subsystem=logging/file-handler=FILE_HANDLER_NAME:write-attribute(name=append,value=APPEND)
エンコーディングを設定します。
ハンドラーのエンコーディングを設定します (例:
utf-8
)。/subsystem=logging/file-handler=FILE_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
ログフォーマッターを設定します。
ヘッダーの書式設定文字列を設定します。たとえば、デフォルトの書式設定文字列は
%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n
です。FORMAT
の値は必ず引用符で囲んでください。/subsystem=logging/file-handler=FILE_HANDLER_NAME:write-attribute(name=formatter,value=FORMAT)
注記保存されたフォーマッター
を参照する場合は named-formatter 属性を使用します。自動フラッシュを設定します。
毎回書き込みの後に自動的にフラッシュするかどうかを設定します。デフォルト値は
true
です。/subsystem=logging/file-handler=FILE_HANDLER_NAME:write-attribute(name=autoflush,value=AUTO_FLUSH)
フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/file-handler=FILE_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
File ログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは File ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=FILE_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに File ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=FILE_HANDLER_NAME)
File ログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/file-handler=FILE_HANDLER_NAME:remove
11.5.3. Periodic rotating ログハンドラーの設定
ここでは、管理 CLI を使用して Periodic rotating ログハンドラーを設定する方法を説明します。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Periodic Handler と選択すると、Periodic ログハンドラーを設定することができます。
Periodic ログハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
Periodic ログハンドラーの追加
Periodic ログハンドラーを追加する場合、 path
および relative-to
属性で設定される file
属性を使用してファイルパスを指定する必要があります。path
属性を使用して名前を含むログのファイルパスを設定します (例: my-log.log
)。オプションで relative-to
属性を使用すると path
が名前付きのパスと相対的になるよう設定できます (例: jboss.server.log.dir
)。
また、suffix
属性を使用してローテーションしたログの接尾辞を設定する必要もあります。これは、 .yyyy-MM-dd-HH
のように java.text.SimpleDateFormat
が認識できる形式でなければなりません。ローテーションの周期はこの接尾辞を基に自動的に算出されます。
/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:add(file={path=FILE_PATH,relative-to=RELATIVE_TO_PATH},suffix=SUFFIX)
Periodic ログハンドラーの設定
必要性に応じて、以下の Periodic ログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる Periodic ログハンドラー属性の完全リストと説明は、Periodic ログハンドラーの属性 を参照してください。
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
追加動作を設定します。
デフォルトでは、サーバーが再起動されたときに JBoss EAP はログメッセージを同じファイルに追加します。サーバーの再起動時にファイルを上書きする場合は
append
属性をfalse
に設定します。/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:write-attribute(name=append,value=APPEND)
エンコーディングを設定します。
ハンドラーのエンコーディングを設定します (例:
utf-8
)。/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
ログフォーマッターを設定します。
ヘッダーの書式設定文字列を設定します。たとえば、デフォルトの書式設定文字列は
%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n
です。FORMAT
の値は必ず引用符で囲んでください。/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:write-attribute(name=formatter,value=FORMAT)
注記保存されたフォーマッター
を参照する場合は named-formatter 属性を使用します。自動フラッシュを設定します。
毎回書き込みの後に自動的にフラッシュするかどうかを設定します。デフォルト値は
true
です。/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:write-attribute(name=autoflush,value=AUTO_FLUSH)
フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
Periodic ログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは Periodic ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=PERIODIC_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Periodic ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=PERIODIC_HANDLER_NAME)
Periodic ログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/periodic-rotating-file-handler=PERIODIC_HANDLER_NAME:remove
11.5.4. Size rotating ログハンドラーの設定
ここでは、管理 CLI を使用して Size rotating ログハンドラーを設定する方法を説明します。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Size Handler と選択すると、Size ログハンドラーを設定することができます。
Size ログハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
Size ログハンドラーの追加
Size ログハンドラーを追加する場合、path
および relative-to
属性で設定される file
属性を使用してファイルパスを指定する必要があります。path
属性を使用して名前を含むログのファイルパスを設定します (例: my-log.log
)。オプションで relative-to
属性を使用すると path
が名前付きのパスと相対的になるよう設定できます (例: jboss.server.log.dir
)。
/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:add(file={path=FILE_PATH,relative-to=RELATIVE_TO_PATH})
Size ログハンドラーの設定
必要性に応じて、以下の Size ログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる Size ログハンドラー属性の完全リストと説明は、Size ログハンドラーの属性 を参照してください。
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
ローテーションされるログの接尾辞を設定します。
接尾辞の文字列を設定します。これは
yyyy-MM-dd-HH
のようにjava.text.SimpleDateFormat
が認識できる形式でなければなりません。ローテーションの周期はこの接尾辞を基に自動的に算出されます。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=suffix, value=SUFFIX)
ローテーションサイズを設定します。
ファイルの最大サイズを設定します。この値を超えるとファイルがローテーションされます。デフォルトは 2 メガバイトを意味する
2m
です。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=rotate-size, value=ROTATE_SIZE)
保持するバックアップログの最大数の設定
保持するバックアップの数を設定します。デフォルト値は
1
です。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=max-backup-index, value=MAX_BACKUPS)
起動時にログをローテーションするかどうかを設定します。
デフォルトでは、サーバーの再起動時に新しいログファイルは作成されません。サーバーの再起動時にログをローテーションするには、
true
に設定します。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=rotate-on-boot, value=ROTATE_ON_BOOT)
追加動作を設定します。
デフォルトでは、サーバーが再起動されたときに JBoss EAP はログメッセージを同じファイルに追加します。サーバーの再起動時にファイルを上書きする場合は
append
属性をfalse
に設定します。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=append,value=APPEND)
エンコーディングを設定します。
ハンドラーのエンコーディングを設定します (例:
utf-8
)。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
ログフォーマッターを設定します。
ヘッダーの書式設定文字列を設定します。たとえば、デフォルトの書式設定文字列は
%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n
です。FORMAT
の値は必ず引用符で囲んでください。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=formatter,value=FORMAT)
注記保存されたフォーマッター
を参照する場合は named-formatter 属性を使用します。自動フラッシュを設定します。
毎回書き込みの後に自動的にフラッシュするかどうかを設定します。デフォルト値は
true
です。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=autoflush,value=AUTO_FLUSH)
フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
Size ログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは Size ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=SIZE_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Size ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=SIZE_HANDLER_NAME)
Size ログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/size-rotating-file-handler=SIZE_HANDLER_NAME:remove
11.5.5. Periodic Size rotating ログハンドラーの設定
ここでは、管理 CLI を使用して Periodic Size rotating ログハンドラーを設定する方法を説明します。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Periodic Size Handler と選択すると、Periodic Size ログハンドラーを設定することができます。
Periodic Size ログハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
Periodic Size ログハンドラーの追加
Periodic Size ログハンドラーを追加する場合、 path
および relative-to
属性で設定される file
属性を使用してファイルパスを指定する必要があります。path
属性を使用して名前を含むログのファイルパスを設定します (例: my-log.log
)。オプションで relative-to
属性を使用すると path
が名前付きのパスと相対的になるよう設定できます (例: jboss.server.log.dir
)。
また、suffix
属性を使用してローテーションしたログの接尾辞を設定する必要もあります。これは、 .yyyy-MM-dd-HH
のように java.text.SimpleDateFormat
が認識できる形式でなければなりません。ローテーションの周期はこの接尾辞を基に自動的に算出されます。
/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:add(file={path=FILE_PATH,relative-to=RELATIVE_TO_PATH},suffix=SUFFIX)
Periodic Size ログハンドラーの設定
必要性に応じて、以下の Periodic Size ログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる Periodic Size ログハンドラー属性の完全リストと説明は、Periodic Size ログハンドラーの属性 を参照してください。
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
ローテーションサイズを設定します。
ファイルの最大サイズを設定します。この値を超えるとファイルがローテーションされます。デフォルトは 2 メガバイトを意味する
2m
です。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=rotate-size, value=ROTATE_SIZE)
保持するバックアップログの最大数の設定
保持するバックアップの数を設定します。デフォルト値は
1
です。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=max-backup-index, value=MAX_BACKUPS)
起動時にログをローテーションするかどうかを設定します。
デフォルトでは、サーバーの再起動時に新しいログファイルは作成されません。サーバーの再起動時にログをローテーションするには、
true
に設定します。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=rotate-on-boot, value=ROTATE_ON_BOOT)
追加動作を設定します。
デフォルトでは、サーバーが再起動されたときに JBoss EAP はログメッセージを同じファイルに追加します。サーバーの再起動時にファイルを上書きする場合は
append
属性をfalse
に設定します。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=append,value=APPEND)
エンコーディングを設定します。
ハンドラーのエンコーディングを設定します (例:
utf-8
)。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
ログフォーマッターを設定します。
ヘッダーの書式設定文字列を設定します。たとえば、デフォルトの書式設定文字列は
%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n
です。FORMAT
の値は必ず引用符で囲んでください。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=formatter,value=FORMAT)
注記保存されたフォーマッター
を参照する場合は named-formatter 属性を使用します。自動フラッシュを設定します。
毎回書き込みの後に自動的にフラッシュするかどうかを設定します。デフォルト値は
true
です。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=autoflush,value=AUTO_FLUSH)
フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
Periodic Size ログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは Periodic Size ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=PERIODIC_SIZE_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Periodic Size ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=PERIODIC_SIZE_HANDLER_NAME)
Periodic Size ログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/periodic-size-rotating-file-handler=PERIODIC_SIZE_HANDLER_NAME:remove
11.5.6. Syslog ハンドラーの設定
ここでは、管理 CLI を使用して Syslog ハンドラーを設定する方法を説明します。Syslog ハンドラーを使用すると、Syslog プロトコル (RFC-3164 または RFC-5424) をサポートするリモートロギングサーバーにメッセージを送信できます。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Syslog Handler と選択すると、Syslog ハンドラーを設定することができます。
Syslog ハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
Syslog ハンドラーの追加
/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:add
Syslog ハンドラーの設定
必要性に応じて、以下の Syslog ハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる Syslog ハンドラー属性の完全リストと説明は、Syslog ハンドラーの属性 を参照してください。
ハンドラーのログレベルを設定します。デフォルトのレベルは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
ログに記録するアプリケーションの名前を設定します。デフォルトの名前は
java
です。/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:write-attribute(name=app-name,value=APP_NAME)
Syslog サーバーのアドレスを設定します。デフォルトのアドレスは
localhost
です。/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:write-attribute(name=server-address,value=SERVER_ADDRESS)
syslog サーバーのポートを設定します。デフォルトのポートは
514
です。/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:write-attribute(name=port,value=PORT)
RFC 仕様の定義どおりに syslog 形式を設定します。デフォルトの形式は
RFC5424
です。/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:write-attribute(name=syslog-format,value=SYSLOG_FORMAT)
syslog ペイロードのメッセージをフォーマットするために
named-formatter
属性を指定します。/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:write-attribute(name=named-formatter, value=FORMATTER_NAME)
Syslog ハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは Syslog ハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=SYSLOG_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Syslog ハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=SYSLOG_HANDLER_NAME)
Syslog ハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/syslog-handler=SYSLOG_HANDLER_NAME:remove
11.5.7. Socket ログハンドラーの設定
ここでは、管理 CLI を使用して Socket ログハンドラーを設定する方法を説明します。ソケットは TCP または UDP ソケットになります。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Size Handler と選択すると、Size ログハンドラーの設定も可能になります。
サーバーが管理者専用モードで起動された場合、ログメッセージは破棄されます。
Socket ログハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
ソケットバインディングの追加
remote-destination-outbound-socket-binding
または local-destination-outbound-socket-binding
を使用する ソケットバインディング として定義します。
/socket-binding-group=SOCKET_BINDING_GROUP/remote-destination-outbound-socket-binding=SOCKET_BINDING_NAME:add(host=HOST, port=PORT)
ログフォーマッターの設定
JSON フォーマッターなど、使用する ログフォーマッター を定義します。
/subsystem=logging/json-formatter=FORMATTER:add
Socket ログハンドラーの追加
Socket ログハンドラーを追加する場合、使用するソケットバインディングとフォーマッターを指定する必要があります。
/subsystem=logging/socket-handler=SOCKET_HANDLER_NAME:add(outbound-socket-binding-ref=SOCKET_BINDING_NAME,named-formatter=FORMATTER)
Socket ログハンドラーの設定
必要性に応じて、以下の Socket ログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる Socket ログハンドラー属性の完全リストと説明は、Socket ログハンドラーの属性 を参照してください。
プロトコルを設定します。
使用するプロトコルを設定します。デフォルトは
TCP
です。/subsystem=logging/socket-handler=SOCKET_HANDLER_NAME:write-attribute(name=protocol,value=PROTOCOL)
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/socket-handler=SOCKET_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
注記サーバーの起動中、Socket ログハンドラーによって処理されるログメッセージは、ソケットバインディングが設定され、
logging
サブシステムが初期化されるまでキューに置かれます。ログレベルがTRACE
やDEBUG
などの低レベルに設定されている場合、起動時に大量のメモリーが消費されることがあります。エンコーディングを設定します。
ハンドラーのエンコーディングを設定します (例:
utf-8
)。/subsystem=logging/socket-handler=SOCKET_HANDLER_NAME:write-attribute(name=encoding,value=ENCODING)
自動フラッシュを設定します。
毎回書き込みの後に自動的にフラッシュするかどうかを設定します。デフォルト値は
true
です。/subsystem=logging/socket-handler=SOCKET_HANDLER_NAME:write-attribute(name=autoflush,value=AUTO_FLUSH)
フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/socket-handler=SOCKET_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
Socket ログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは Socket ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=SOCKET_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Socket ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=SOCKET_HANDLER_NAME)
Socket ログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーまたは Async ログハンドラーに割り当てられている場合は削除できません。
/subsystem=logging/socket-handler=SOCKET_HANDLER_NAME:remove
SSL/TLS を使用したソケット上でのログメッセージの送信
次の手順は、SSL_TCP
プロトコルを使用してソケット上でログメッセージを送信するように Socket ログハンドラーを設定する方法の例を示しています。この例では、Socket ログハンドラーによって使用される elytron
サブシステムのキーストア、トラストマネージャー、およびクライアント SSL コンテキストを設定します。ルートロガーからのログメッセージは指定のソケット上で送信され、JSON フォーマッターによってフォーマットされます。
Elytron コンポーネントの設定に関する詳細は、JBoss EAPHow to Configure Server Security のElytron Subsystemを参照してください。
Elytron を設定します。
キーストアを追加します。
/subsystem=elytron/key-store=log-server-ks:add(path=/path/to/keystore.jks, type=JKS, credential-reference={clear-text=mypassword})
トラストマネージャーを追加します。
/subsystem=elytron/trust-manager=log-server-tm:add(key-store=log-server-ks)
クライアント SSL コンテキストを追加します。
/subsystem=elytron/client-ssl-context=log-server-context:add(trust-manager=log-server-tm, protocols=["TLSv1.2"])
ソケットバインディングを追加します。
/socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=log-server:add(host=localhost, port=4560)
JSON フォーマッターを追加します。
/subsystem=logging/json-formatter=json:add
Socket ログハンドラーを追加します。
/subsystem=logging/socket-handler=log-server-handler:add(named-formatter=json, level=INFO, outbound-socket-binding-ref=log-server, protocol=SSL_TCP, ssl-context=log-server-context)
ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=log-server-handler)
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
11.5.9. Async ログハンドラーの設定
ここでは、管理 CLI を使用して Async ログハンドラーを設定する方法を説明します。管理コンソールでは、Configuration → Subsystems → Logging → Configuration と選択し、表示 をクリックして Handler → Async Handler と選択すると、Async ログハンドラーを設定することができます。
Async ログハンドラーを設定するために実行する主なタスクは以下のとおりです。
ロギングプロファイルにこのログハンドラーを設定する場合、コマンドの最初は /subsystem=logging/
ではなく /subsystem=logging/logging-profile=LOGGING_PROFILE_NAME/
になります。
さらに、管理対象ドメインで実行している場合はコマンドの前に /profile=PROFILE_NAME
を付けます。
Async ログハンドラーの追加
Async ログハンドラーを追加するときにキューの長さを指定する必要があります。これは、キューに保持できるログリクエストの最大数のことです。
/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:add(queue-length=QUEUE_LENGTH)
サブハンドラーの追加
1 つ以上のハンドラーを Async ログハンドラーのサブハンドラーとして追加できます。ハンドラーが設定に存在しないと、このコマンドの実行に失敗するため注意してください。
/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:add-handler(name=HANDLER_NAME)
Async ログハンドラーの設定
必要性に応じて、以下の Async ログハンドラー属性を 1 つ以上設定する必要がある場合があります。利用できる Async ログハンドラー属性の完全リストと説明は、Async ログハンドラーの属性 を参照してください。
ログレベルを設定します。
ハンドラーの適切なログレベルを設定します。デフォルトは
ALL
です。利用できるオプションは、ログレベル を参照してください。/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:write-attribute(name=level,value=LEVEL)
オーバーフローアクションを設定します。
オーバーフローが発生したときに行うアクションを設定します。デフォルトの値は
BLOCK
で、キューが満杯になるとスレッドがブロックされます。この値をDISCARD
に変更すると、キューが満杯になったときにログメッセージが破棄されます。/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:write-attribute(name=overflow-action,value=OVERFLOW_ACTION)
フィルター式を設定します。
ハンドラーのログメッセージをフィルターするために式を設定します。必ずコンマと引用符はエスケープ処理し、引用符で囲むようにしてください。たとえば、以下の置換可能な
FILTER_EXPRESSION
変数では、not(match("WFLY"))
のフィルター式を"not(match(\"WFLY\"))"
に置き換える必要があります。/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:write-attribute(name=filter-spec, value=FILTER_EXPRESSION)
利用可能なフィルター式の詳細は フィルター式 の項を参照してください。
Async ログハンドラーのロガーへの割り当て
ログハンドラーをアクティブにするには、ロガーに割り当てる必要があります。
以下の管理 CLI コマンドは Async ログハンドラーをルートロガーに割り当てます。
/subsystem=logging/root-logger=ROOT:add-handler(name=ASYNC_HANDLER_NAME)
以下の管理 CLI コマンドは、名前が CATEGORY
によって指定されるロガーに Async ログハンドラーを割り当てます。
/subsystem=logging/logger=CATEGORY:add-handler(name=ASYNC_HANDLER_NAME)
Async ログハンドラーの削除
ログハンドラーは remove
操作で削除できます。ログハンドラーが現在ロガーに割り当てられている場合は削除できません。
/subsystem=logging/async-handler=ASYNC_HANDLER_NAME:remove