14.3.5. CLI での周期ログハンドラーの設定

周期ログハンドラーは、CLI で追加、削除、および編集できます。
Periodic ログハンドラーを設定するために実行する主なタスクは以下のとおりです。
  • 新しい周期ログハンドラーの追加
  • 周期ログハンドラーの設定表示
  • ハンドラーのログレベルの設定
  • ハンドラーの追加動作の設定
  • ハンドラーが autoflush を使用するかどうかを設定します。
  • ハンドラーの出力に使用されるエンコーディングの設定
  • ログハンドラーが書き込むファイルの指定
  • ハンドラーの出力に使用されるフォーマッターの設定
  • ローテーションされるログの接尾辞を設定します。
  • 周期ログハンドラーの削除
これらの各タスクについては以下で説明します。

重要

ログハンドラーをスタンドアロンシステムのロギングプロファイルで設定する場合、設定パスのルートは /subsystem=logging/ ではなく /subsystem=logging/logging-profile=NAME/ になります。
管理対象ドメインの場合は、使用するプロファイルを指定する必要があります。管理対象ドメインの設定パスの先頭にプロファイル名を追加する必要があります (/subsystem=logging//profile=NAME/subsystem=logging/ に置き換えます)。
新しい周期ローテーションファイルログハンドラーの追加
次の構文で add 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:add(file={"path"=>"PATH", "relative-to"=>"DIR"}, suffix="SUFFIX") 
HANDLER をログハンドラーの名前に置き換えます。PATH をログが書き込まれるファイルのファイル名に置き換えます。DIR をファイルが存在するディレクトリーの名前に置き換えます。DIR の値をパス変数に指定できます。SUFFIX を、使用するファイルローテーション接尾辞に置き換えます。

例14.29 新しいハンドラーの追加

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:add(file={"path"=>"daily-debug.log", "relative-to"=>"jboss.server.log.dir"}, suffix=".yyyy.MM.dd")
{"outcome" => "success"}
[standalone@localhost:9999 /]
周期ローテーションファイルログハンドラー設定の表示
次の構文で read-resource 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:read-resource 
HANDLER をログハンドラーの名前に置き換えます。

例14.30 read-resource 操作の使用

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:read-resource
{
    "outcome" => "success",
    "result" => {
        "append" => true,
        "autoflush" => true,
        "encoding" => undefined,
        "file" => {
            "path" => "daily-debug.log",
            "relative-to" => "jboss.server.log.dir"
        },
        "filter" => undefined,
        "formatter" => "%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n",
        "level" => undefined
    }
}
ログレベルの設定
次の構文で write-attribute 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:write-attribute(name="level". value="LOG_LEVEL_VALUE") 
HANDLER を周期ログハンドラーの名前に置き換えます。LOG_LEVEL_VALUE を設定するログレベルに置き換えます。

例14.31 ログレベルの設定

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:write-attribute(name="level", value="DEBUG")
{"outcome" => "success"}
追加動作の設定
次の構文で write-attribute 操作を使用します。
 /subsystem=logging/periodic-rotating-handler=HANDLER:write-attribute(name="append", value="BOOLEAN") 
HANDLER を周期ログハンドラーの名前に置き換えます。アプリケーションサーバーが起動されるたびに新しいログファイルを作成する必要がある場合は、BOOLEANfalse に置き換えます。アプリケーションサーバーが同じファイルを使用し続ける必要がある場合は、BOOLEANtrue に置き換えます。
この変更を反映するには、JBoss EAP 6 を再起動する必要があります。

例14.32 追加動作の設定

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:write-attribute(name="append", value="true")
{
    "outcome" => "success",
    "response-headers" => {
        "operation-requires-reload" => true,
        "process-state" => "reload-required"
    }
}
自動フラッシュの設定
次の構文で write-attribute 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:write-attribute(name="autoflush", value="BOOLEAN") 
HANDLER を周期ログハンドラーの名前に置き換えます。このハンドラーがすぐに出力を書き込む場合は、BOOLEANtrue に置き換えます。
この変更を反映するには、JBoss EAP 6 を再起動する必要があります。

例14.33 自動フラッシュ動作の設定

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:write-attribute(name="autoflush", value="false")
{
    "outcome" => "success",
    "response-headers" => {"process-state" => "reload-required"}
}
エンコーディングの設定
次の構文で write-attribute 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:write-attribute(name="encoding", value="ENCODING") 
HANDLER を周期ログハンドラーの名前に置き換えます。ENCODING を必要な文字エンコーディングシステムの名前に置き換えます。

例14.34 エンコーディングの設定

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:write-attribute(name="encoding", value="utf-8")     
{"outcome" => "success"}
ログハンドラーが書き込むファイルの変更
次の構文で write-attribute 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:write-attribute(name="file", value={"path"=>"PATH", "relative-to"=>"DIR"}) 
HANDLER を周期ログハンドラーの名前に置き換えます。PATH をログが書き込まれるファイルのファイル名に置き換えます。DIR をファイルが存在するディレクトリーの名前に置き換えます。DIR の値をパス変数に指定できます。

例14.35 ログハンドラーが書き込むファイルの変更

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:write-attribute(name="file", value={"path"=>"daily-debug.log", "relative-to"=>"jboss.server.log.dir"})
{"outcome" => "success"}
フォーマッターの設定
次の構文で write-attribute 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:write-attribute(name="formatter", value="FORMAT") 
HANDLER を周期ログハンドラーの名前に置き換えます。FORMAT を必要なフォーマッター文字列に置き換えます。

例14.36 フォーマッターの設定

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:write-attribute(name="formatter", value="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n")
{"outcome" => "success"}
[standalone@localhost:9999 /]
ローテーションされるログの接尾辞の設定
次の構文で write-attribute 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:write-attribute(name="suffix", value="SUFFIX") 
HANDLER をログハンドラーの名前に置き換えます。SUFFIX を必要な接尾辞の文字列に置き換えます。

例14.37

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:write-attribute(name="suffix", value=".yyyy-MM-dd-HH")
{"outcome" => "success"}
[standalone@localhost:9999 /]
周期ログハンドラーの削除
次の構文で remove 操作を使用します。
 /subsystem=logging/periodic-rotating-file-handler=HANDLER:remove 
HANDLER を周期ログハンドラーの名前に置き換えます。

例14.38 周期ログハンドラーの削除

[standalone@localhost:9999 /] /subsystem=logging/periodic-rotating-file-handler=HOURLY_DEBUG:remove
{"outcome" => "success"}
[standalone@localhost:9999 /]