クラス XLogger

java.lang.Object
org.opengion.fukurou.fileexec.XLogger

public final class XLogger extends Object
XLoggerは、Throwable を引数に取るwarningと、Level 600 の debug メソッドを 持つ、Logger の拡張クラスです。 ここでは、継承するのではなく、委譲で、最低限のメソッドだけに対応しています。 (LogManager とか、色々とややこしそうなので、調査する暇が無い) WARNING(900) → INFO(800) → CONFIG(700) → XXXX(600) → FINE(500) → ALL(Integer.MIN_VALUE) となっていますが、FINE では、多すぎ、INFO は、通常使用、間に、DEBUG的な、 ロギングが欲しい場合に使用します。 CONFIG を使いたいところですが、「CONFIGは静的な構成メッセージのメッセージ・レベルです。」と JavaDocにわざわざ、書かれていることから、使用を避けます。
変更履歴:
7.0.0.0 (2017/07/07) 新規作成
導入されたバージョン:
JDK1.8,
  • メソッドの詳細

    • getLogger

      public static XLogger getLogger(String name)
      名前を指定して、XLoggerオブジェクトを作成します。
      パラメータ:
      name - ロガーの名前。通常は、クラス.class.getName() を渡せばよいです。
      戻り値:
      XLoggerオブジェクト
      変更履歴:
      7.2.1.0 (2020/03/13) ロガーの名前から、共通部分を削除します。, 7.2.5.0 (2020/06/01) 各クラスで、class.getSimpleName() を渡すようにした。
    • info

      public void info(Supplier<String> msgSupplier)
      INFO レベルのログをとります。 引数は Supplier のみなので、実行直前まで処理されません。 よって、呼出元では、log level guards する必要はありません。
      パラメータ:
      msgSupplier - 呼び出されると、目的のログ・メッセージを生成する関数
      関連項目:
      変更履歴:
      7.3.0.0 (2021/01/06) PMD:GuardLogStatement: Logger calls should be surrounded by log level guards.
    • warning

      public void warning(Supplier<String> msgSupplier)
      WARNING レベルのログをとります。 引数は Supplier のみなので、実行直前まで処理されません。 よって、呼出元では、log level guards する必要はありません。
      パラメータ:
      msgSupplier - 呼び出されると、目的のログ・メッセージを生成する関数
      関連項目:
      変更履歴:
      7.3.0.0 (2021/01/06) PMD:GuardLogStatement: Logger calls should be surrounded by log level guards.
    • isWarningEnabled

      public boolean isWarningEnabled()
      WARNING レベルのログが、処理されるか、判定します。 引数が Supplier のみでない場合は、実行前に、log level guards してください。
      戻り値:
      args WARNINGレベルのログを出力する場合は、trueを返します。
      変更履歴:
      7.3.0.0 (2021/01/06) 新規追加
    • warning

      public void warning(String id, Object... args)
      WARNING レベルのログをとります。 引数処理が発生しますので、呼出元で、log level guards してください。 if( XLogger.isWarningEnabled() ) { XLogger.warning( id,args1,args2,… ); }
      パラメータ:
      id - リソースのキーとなるID。
      args - リソースを、MessageFormat.format で加工する場合の引数。
      関連項目:
      変更履歴:
      7.2.5.0 (2020/06/01) メソッド追加。
    • warning

      public void warning(Throwable th, Supplier<String> msgSupplier)
      WARNING レベルのログをとります。 これは、Throwable を引数に取る拡張されたメソッドです。 引数処理が発生しますので、呼出元で、log level guards してください。
      パラメータ:
      th - ログ・メッセージに関連したThrowable。
      msgSupplier - 呼び出されると、目的のログ・メッセージを生成する関数
      関連項目:
    • warning

      public void warning(Throwable th, String id, Object... args)
      WARNING レベルのログをとります。 これは、Throwable を引数に取る拡張されたメソッドです。 引数処理が発生しますので、呼出元で、log level guards してください。
      パラメータ:
      th - 発生元のThrowable( null値は許容されます )
      id - リソースのキーとなるID。
      args - リソースを、MessageFormat.format で加工する場合の引数。
      関連項目:
      変更履歴:
      7.2.5.0 (2020/06/01) メソッド追加。
    • debug

      public void debug(Supplier<String> msgSupplier)
      600 レベルのログをとります。 Supplierを引数に、Level = 600 のログをとります。 引数は Supplier のみなので、実行直前まで処理されません。 よって、呼出元では、log level guards する必要はありません。
      パラメータ:
      msgSupplier - 呼び出されると、目的のログ・メッセージを生成する関数
      関連項目:
      変更履歴:
      7.3.0.0 (2021/01/06) PMD:GuardLogStatement: Logger calls should be surrounded by log level guards.
    • isDebugEnabled

      public boolean isDebugEnabled()
      WARNING レベルのログが、処理されるか、判定します。 引数が Supplier のみでない場合は、実行前に、log level guards してください。
      戻り値:
      args WARNINGレベルのログを出力する場合は、trueを返します。
      変更履歴:
      7.3.0.0 (2021/01/06) 新規追加
    • debug

      public void debug(int num, Function<Integer,String> msgFunction)
      数値の変数を受け取って表示する、600 レベルのログをとります。 Supplierを引数に、Level = 600 のログをとります。 関数型インタフェースは引数にfinal変数しか使えませんが、数値は大抵可変なので final化せずに、引数として渡すことが出来るようにします。 引数処理が発生しますので、呼出元で、log level guards してください。
      パラメータ:
      num - 数値引数
      msgFunction - 呼び出されると、目的のログ・メッセージを生成する関数
      関連項目:
      変更履歴:
      7.2.5.0 (2020/06/01) メソッド追加。