8.8.1 J2EEサーバの設定
簡易構築定義ファイルを編集して,ハンドラからのログの出力先,ログレベル,ログ面数,使用するフィルタ,フォーマッタなどを指定してください。
(1) 設定内容
簡易構築定義ファイルで論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,ejbserver.applicationから始まるパラメタで,J2EEアプリケーションのユーザログを出力するための設定をします。ejbserver.applicationから始まるパラメタを次に示します。なお,<ハンドラ名称>には,キーの値を区別するためのハンドラ名称を指定してください。また,<ロガー名称>には,Loggerのインスタンスを取得するときに指定するロガー名称を指定してください。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.appname
ハンドラごとに,ログファイルに出力するメッセージのJ2EEアプリケーション名(AppNameフィールドの値)のデフォルト値を指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.count
ハンドラごとに,ログファイルの面数を指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.encoding
ハンドラごとに,ログファイルに出力する文字列のエンコーディングを指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.filter
ハンドラごとに,使用するフィルタ名を指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.formatter
ハンドラごとに,使用するフォーマッタ名を指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.level
ハンドラごとに,ログ取得レベルの上限を指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.limit
ハンドラごとに,ログファイルのサイズを指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.msgid
ハンドラごとに,ログファイルに出力するメッセージのメッセージID(MsgIDフィールドの値)のデフォルト値を指定します。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.path
ハンドラごとに,ログファイルの出力先とプリフィックスを指定します。出力されるログファイル名は,「<プリフィックス><1〜16の番号>.log」になります。このキーは必ず指定してください。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.separator
ハンドラごとに,ログファイルに出力するメッセージを1文で出力するための,要素区切り文字のデフォルト値を指定します。
-
ejbserver.application.userlog.loggers
使用するロガー名称を宣言します。このキーは必ず指定してください。
-
ejbserver.application.userlog.Logger.<ロガー名称>.handlers
ロガーごとに,使用するハンドラ名称を指定します。このキーは必ず指定してください。
-
ejbserver.application.userlog.Logger.<ロガー名称>.level
ロガーごとに,ロガーのログ取得レベルを指定します。
-
ejbserver.application.userlog.Logger.<ロガー名称>.useParentHandlers
ロガーごとに,ロガーを通過するレベルのログレコードを,親のロガーが使用しているハンドラに伝播させるかどうかを指定します。
-
ejbserver.application.userlog.Logger.<ロガー名称>.filter
ロガーごとに,ロガーでメッセージの取捨選択に使用するフィルタを指定します。
J2EEアプリケーションのユーザログを出力するためには,少なくとも,次の三つのパラメタを指定する必要があります。
-
ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.path
-
ejbserver.application.userlog.loggers
-
ejbserver.application.userlog.Logger.<ロガー名称>.handlers
簡易構築定義ファイルの詳細については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.3 簡易構築定義ファイル」を参照してください。
(2) 注意事項
-
ロガーには複数のハンドラを接続できます。ただし,複数のロガーに同一のPath設定を持つファイルハンドラ(CJMessageFileHandler)は接続できません。ファイルハンドラはロガーへの接続の指定(ejbserver.application.userlog.Logger.<ロガー名称>.handlersの値)を参照してインスタンス化します。この際,ログの出力先とプリフィックス(ejbserver.application.userlog.CJLogHandler.<ハンドラ名称>.pathの値)の同じハンドラがインスタンス化されている場合は,ログファイルのオープンに失敗します。
-
ハンドラやロガーの設定および構築については,簡易構築定義ファイルで指定できますが,ハンドラの作成やロガーの構成変更をJ2EEアプリケーション内に直接実装する場合は,実行するアプリケーションにLoggingPermission("control")のセキュリティ権限が必要になります。LoggingPermission("control")のセキュリティ権限の設定方法については,「8.8.2 セキュリティポリシーの設定」を参照してください。