public class MasterLog extends Object
このクラスはマスタデータの更新ログを出力するためのAPIを提供します。
マスタデータに対し、登録/更新/削除を行う処理でログ出力APIを呼び出すことにより、 内部統制で利用可能なマスタデータ更新履歴情報を保存することが可能です。
マスタデータ更新ログの出力箇所ならびにメッセージについては「マスタデータ更新ログメッセージ一覧」を参照してください。
新たにマスタデータの更新処理に該当する処理を作成した場合、 該当のメソッドで以下のAPIを呼び出すように実装してください。
log(String, String, String, ResultKind, String...)
<実装例> public void foo(String arg0) { try { : } finally { // 必ずログ出力が行われるように、finally節に記述します。 // 実際には処理の結果を判定し、処理区分や更新結果種別を選択して出力する必要があります。 MasterLog.log(getClass().getName(), MasterLog.FUNCTION_TYPE_CREATE, // 処理区分 "foo.message.1", ResultKind.SUCCESS, // 更新結果種別 arg0); } }
<トランザクションログについて>
ログ出力APIによって処理単位の成功/失敗情報が出力されますが、 正確な処理結果の判定にはトランザクション単位での処理結果を確認する必要があります。
intra-mart標準のトランザクション管理機能を利用した場合、マスタデータ更新ログと合わせて トランザクションの開始/終了ログが出力されます。
独自のトランザクション管理機構を利用する場合、トランザクションログは出力されません。
そのような場合は、以下のトランザクションログ出力APIを利用して、 トランザクションの開始/終了ログを出力するようにしてください。
logBeginTransaction()
logFinishTransaction(boolean)
マスタデータ更新ログに関する詳細については、「設定ファイルリファレンス」の「マスタデータ更新ログ」を参照してください。
修飾子とタイプ | クラスと説明 |
---|---|
static class |
MasterLog.ResultKind
更新結果種別
マスタデータ更新ログに出力する更新結果を扱う列挙型です。
|
修飾子とタイプ | フィールドと説明 |
---|---|
static String |
FUNCTION_TYPE_COMMIT
トランザクションコミットを表す処理区分
|
static String |
FUNCTION_TYPE_CREATE
登録を表す処理区分
|
static String |
FUNCTION_TYPE_DELETE
削除を表す処理区分
|
static String |
FUNCTION_TYPE_ROLLBACK
トランザクションロールバックを表す処理区分
|
static String |
FUNCTION_TYPE_TRANSACTION
トランザクション開始を表す処理区分
|
static String |
FUNCTION_TYPE_UPDATE
更新を表す処理区分
|
static String |
IM_MASTERLOG_PREFIX
メッセージコードのプリフィックス
|
static String |
MASTER_FUNCTION_TYPE
MDCにセットする処理区分のキー
|
static String |
MASTER_LOGIN_GROUP_ID
MDCにセットするログイングループIDのキー
|
static String |
MASTER_MESSAGE_CD
MDCにセットするメッセージのキー
|
static String |
MASTER_RESULT
MDCにセットする更新結果種別のキー
|
static String |
MASTER_TRANSACTION_ID
MDCにセットするトランザクションIDのキー
|
static String |
MASTER_USER_CD
MDCにセットするアカウントIDのキー
|
コンストラクタと説明 |
---|
MasterLog() |
修飾子とタイプ | メソッドと説明 |
---|---|
static String |
dateToString(Date date)
日付データをフォーマット変換します
|
static Locale |
getLocale()
ログメッセージ用のロケールを取得します
出力するパラメータがロケールに依存する場合、このメソッドを利用してログファイルのロケールを統一します。
|
static boolean |
isLogEnabled()
ログ出力の有無のチェックを行います。
|
static void |
log(String loggerName,
String functionType,
String messageId,
MasterLog.ResultKind result,
String... params)
マスタデータ更新ログを出力します。
|
static void |
logBeginTransaction()
トランザクション開始ログを出力します。
|
static void |
logFinishTransaction(boolean commit)
トランザクション終了ログを出力します。
|
public static final String MASTER_TRANSACTION_ID
public static final String MASTER_FUNCTION_TYPE
public static final String MASTER_LOGIN_GROUP_ID
public static final String FUNCTION_TYPE_TRANSACTION
public static final String FUNCTION_TYPE_COMMIT
public static String dateToString(Date date)
date
- フォーマット変換対象の日付データpublic static Locale getLocale()
出力するパラメータがロケールに依存する場合、このメソッドを利用してログファイルのロケールを統一します。
public static boolean isLogEnabled()
マスタデータ更新ログデータ出力時に、ログに出力する情報の生成処理などを行っている場合、
マスタデータ更新ログの出力をオフにした場合でも上記の処理が行われるため、パフォーマンスが低下します。
このメソッドを利用してログ出力の有無のチェックを行って処理を回避することでパフォーマンスの低下を抑制します。
public static void log(String loggerName, String functionType, String messageId, MasterLog.ResultKind result, String... params)
loggerName
- ロガー名。 ログファイルに出力されるロガー名です。通常はログ出力する対象のクラス名を指定します。functionType
- 処理区分。 処理の種類を表す文字列です。標準機能では、以下の文字列を出力します。
FUNCTION_TYPE_CREATE
)FUNCTION_TYPE_UPDATE
)・・・処理によって登録・更新・削除のいずれにも該当する場合は、「U」となります。FUNCTION_TYPE_DELETE
)FUNCTION_TYPE_TRANSACTION
)FUNCTION_TYPE_COMMIT
)FUNCTION_TYPE_ROLLBACK
)messageId
- メッセージID。 MessageManager
を利用して国際化メッセージを取得するためのメッセージIDです。result
- 更新結果種別。成功/失敗などの更新結果を表す値です。MasterLog.ResultKind
列挙型から該当の値を設定します。params
- メッセージパラメータの配列。 メッセージファイルで定義された変数({0}, {1}, ...)に出力するパラメータを任意の数だけ指定します。public static void logBeginTransaction()
public static void logFinishTransaction(boolean commit)
引数により、コミットログとロールバックログを切り替えます。
commit
- コミットフラグ 該当するフラグを設定します。 Copyright © 2012 NTT DATA INTRAMART CORPORATION