11.3.4. CLI でのファイルログハンドラーの設定

ファイルログハンドラーは CLI で追加、削除、および編集できます。
ファイルログハンドラーを設定するために実行する主なタスクは以下のとおりです。
  • ファイルログハンドラーの設定を表示します。
  • 新しいファイルログハンドラーを追加します。
  • ハンドラーのログレベルを設定します。
  • ハンドラーの追加動作を設定します。
  • ハンドラーが自動フラッシュを使用するかどうかを設定します。
  • ハンドラーの出力に使用されるエンコーディングを設定します。
  • ログハンドラーが書き込むファイルを指定します。
  • ハンドラーの出力に使用されるフォーマッターを設定します。
  • ファイルログハンドラーを削除します。
ファイルログハンドラー設定の表示
次の構文で read-resource 操作を使用します。HANDLER はファイルログハンドラーの名前に置き換えます。
 /subsystem=logging/file-handler=HANDLER:read-resource 

例11.20 read-resource 操作の使用

[standalone@localhost:9999 /] /subsystem=logging/file-handler=accounts_log:read-resource
{
    "outcome" => "success",
    "result" => {
        "append" => true,
        "autoflush" => true,
        "encoding" => undefined,
        "file" => {
            "path" => "accounts.log",
            "relative-to" => "jboss.server.log.dir"
        },
        "filter" => undefined,
        "formatter" => "%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n",
        "level" => undefined
    }
}
[standalone@localhost:9999 /]
ファイルログハンドラーの追加
次の構文で add 操作を使用します。PATH を、ログが書き込まれるファイルのファイル名で置き換えます。DIR を、ファイルを格納するディレクトリーの名前に置き換えます。DIR の値はパス変数に指定できます。
 /subsystem=logging/file-handler=HANDLER:add(file={"path"=>"PATH", "relative-to"=>"DIR"}) 

例11.21 ファイルログハンドラーの追加

[standalone@localhost:9999 /] /subsystem=logging/file-handler=accounts_log:add(file={"path"=>”accounts.log", "relative-to"=>"jboss.server.log.dir"})
{"outcome" => "success"}
[standalone@localhost:9999 /]
ログレベルの設定
次の構文で change-log-level 操作を使用します。HANDLER はファイルログハンドラーの名前と置き換えます。LEVEL は設定するログレベルと置き換えます。
 /subsystem=logging/file-handler=HANDLER:change-log-level(level="LEVEL") 

例11.22 ログレベルの変更

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

例11.23 追加プロパティーの変更

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

例11.24 自動フラッシュプロパティーの変更

[standalone@localhost:9999 /] /subsystem=logging/file-handler=accounts_log:write-attribute(name="autoflush", value="false")
{
    "outcome" => "success",
    "response-headers" => {"process-state" => "reload-required"}
}
[standalone@localhost:9999 /]
この変更を反映するには、JBoss Enterprise Application Platform 6 を再起動する必要があります。
エンコーディングの設定
次の構文で write-attribute 操作を使用します。HANDLER はファイルログハンドラーの名前に置き換えます。ENCODING は必要な文字エンコーディングシステムの名前に置き換えます。
 /subsystem=logging/file-handler=HANDLER:write-attribute(name="encoding", value="ENCODING") 

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

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

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

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

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

[standalone@l/subsystem=logging/file-handler=accounts-log:write-attribute(name="formatter", value="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"))
{"outcome" => "success"}
[standalone@localhost:9999 /]
ファイルログハンドラーの削除
次の構文で remove 操作を使用します。HANDLER は削除するファイルログハンドラーの名前に置き換えます。
 /subsystem=logging/file-handler=HANDLER:remove 

例11.28 コンソールログハンドラーの削除

[standalone@localhost:9999 /] /subsystem=logging/file-handler=accounts_log:remove
{"outcome" => "success"}
[standalone@localhost:9999 /]
ログハンドラーは、ログカテゴリーまたは非同期ログハンドラーによって参照されていない場合にのみ削除できます。