public final class LogUtil
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
LogUtil.BasicMapValueEditor
マップの値を編集するインタフェースの基本実装クラス。
|
static interface |
LogUtil.MapValueEditor
マップの値を編集するインタフェース。
マップをダンプする処理( dumpMap(Map, String, MapValueEditor) )で使用する。 |
static class |
LogUtil.MaskingMapValueEditor
マップの値をマスキングするクラス。
|
static interface |
LogUtil.ObjectCreator<T>
クラスローダに紐付くオブジェクトを生成するインタフェース。
|
Modifier and Type | Method and Description |
---|---|
static boolean |
contains(LogItem[] logItems,
java.lang.Class... classes)
フォーマット済みのログ出力項目に指定された出力項目が含まれているかを判定する。
|
static <T> LogItem<T>[] |
createFormattedLogItems(java.util.Map<java.lang.String,LogItem<T>> logItems,
java.lang.String format)
フォーマット文字列からフォーマット済みのログ出力項目を生成する。
指定されたログ出力項目のキーをプレースホルダ($名前$形式)検索用のパターンに使用する。 |
static <T> LogItem<T>[] |
createFormattedLogItems(java.util.Map<java.lang.String,LogItem<T>> logItems,
java.lang.String format,
java.util.regex.Pattern pattern)
フォーマット文字列からフォーマット済みのログ出力項目を生成する。
プレースホルダでない固定文字列には、 FixedStringItem を使用する。 |
static java.util.regex.Pattern |
createReplacementsPattern(java.util.Set<java.lang.String> replacements)
プレースホルダ($名前$形式)検索用のパターンを作成する。
|
static <T> java.lang.String |
dumpMap(java.util.Map<java.lang.String,T> map,
java.lang.String separator)
マップをダンプした文字列を返す。
|
static <T> java.lang.String |
dumpMap(java.util.Map<java.lang.String,T> map,
java.lang.String separator,
LogUtil.MapValueEditor valueEditor)
マップをダンプした文字列を返す。
|
static <T> java.lang.String |
dumpMap(java.util.Map<java.lang.String,T> map,
java.lang.String separator,
java.util.regex.Pattern excludeKeyPattern)
マップをダンプした文字列を返す。
|
static LogItem |
findLogItem(LogItem[] logItems,
java.lang.Class c)
フォーマット済みのログ出力項目から指定された出力項目を検索する。
|
static <T> java.lang.String |
formatMessage(LogItem<T>[] logItems,
T context)
フォーマット済みのログ出力項目を使用してメッセージをフォーマットする。
|
static java.lang.String |
generateExecutionId()
実行時IDを生成する。
|
static java.lang.String |
getBootProcess()
システムプロパティ("nablarch.bootProcess")から起動プロセスを識別する文字列を取得する。
|
static <T> T |
getObjectBoundToClassLoader(LogUtil.ObjectCreator<T> creator)
クラスローダに紐付くオブジェクトを取得する。
|
static void |
removeAllObjectsBoundToContextClassLoader()
コンテキストクラスローダに紐付く全てのオブジェクトを削除する。
|
static <T> T |
removeObjectBoundToContextClassLoader(LogUtil.ObjectCreator<T> creator)
コンテキストクラスローダに紐付くオブジェクトを削除する。
|
public static java.lang.String generateExecutionId()
実行時IDは下記のフォーマットで生成する。
起動プロセス+日時("yyyyMMddHHmmssSSS")+連番(4桁)
起動プロセスはgetBootProcess()
から取得する。
public static java.lang.String getBootProcess()
public static java.util.regex.Pattern createReplacementsPattern(java.util.Set<java.lang.String> replacements)
replacements
- 置き換え文字($名前$形式)public static <T> LogItem<T>[] createFormattedLogItems(java.util.Map<java.lang.String,LogItem<T>> logItems, java.lang.String format)
T
- ログ出力項目の取得に使用するコンテキストの型logItems
- ログ出力項目format
- フォーマット文字列public static <T> LogItem<T>[] createFormattedLogItems(java.util.Map<java.lang.String,LogItem<T>> logItems, java.lang.String format, java.util.regex.Pattern pattern)
FixedStringItem
を使用する。T
- ログ出力項目の取得に使用するコンテキストの型logItems
- ログ出力項目format
- フォーマット文字列pattern
- プレースホルダのパターンpublic static <T> java.lang.String formatMessage(LogItem<T>[] logItems, T context)
T
- ログ出力項目の取得に使用するコンテキストの型logItems
- フォーマット済みのログ出力項目context
- ログ出力項目の取得に使用するコンテキストpublic static <T> java.lang.String dumpMap(java.util.Map<java.lang.String,T> map, java.lang.String separator)
T
- マップの値の型map
- マップseparator
- マップエントリのセパレータpublic static <T> java.lang.String dumpMap(java.util.Map<java.lang.String,T> map, java.lang.String separator, java.util.regex.Pattern excludeKeyPattern)
T
- マップの値の型map
- マップseparator
- マップエントリのセパレータexcludeKeyPattern
- ダンプから除外するキーのパターン。指定しない場合はnullpublic static <T> java.lang.String dumpMap(java.util.Map<java.lang.String,T> map, java.lang.String separator, LogUtil.MapValueEditor valueEditor)
T
- マップの値の型map
- マップseparator
- マップエントリのセパレータvalueEditor
- LogUtil.MapValueEditor
public static boolean contains(LogItem[] logItems, java.lang.Class... classes)
logItems
- フォーマット済みのログ出力項目classes
- 出力項目クラスpublic static LogItem findLogItem(LogItem[] logItems, java.lang.Class c)
logItems
- フォーマット済みのログ出力項目c
- 出力項目クラスpublic static <T> T getObjectBoundToClassLoader(LogUtil.ObjectCreator<T> creator)
カレントスレッドから取得したコンテキストクラスローダまたはその祖先のクラスローダに紐づくオブジェクトを取得する。
クラスローダに紐付くオブジェクトが存在しない場合は、LogUtil.ObjectCreator
を使用してオブジェクトを生成し、
カレントスレッドから取得したコンテキストクラスローダに紐付けて保持する。
T
- クラスローダに紐付くオブジェクトの型creator
- クラスローダに紐付くオブジェクトを生成するLogUtil.ObjectCreator
public static <T> T removeObjectBoundToContextClassLoader(LogUtil.ObjectCreator<T> creator)
T
- クラスローダに紐付くオブジェクトの型creator
- クラスローダに紐付くオブジェクトを生成したLogUtil.ObjectCreator
public static void removeAllObjectsBoundToContextClassLoader()