public class SimpleFormatter extends Formatter
LogRecord
の簡単なサマリーを人が理解できる形式で出力します。このサマリーは通常、1 行か 2 行になります。
構成:SimpleFormatter
は、ログメッセージをフォーマットするために、java.util.logging.SimpleFormatter.format
プロパティーで指定されたフォーマット文字列で初期化されます。このプロパティーは、ロギングプロパティーの構成ファイルか、システムプロパティーとして定義されます。このプロパティーがロギングプロパティーとシステムプロパティーの両方で設定されている場合は、システムプロパティーで指定されたフォーマット文字列が使用されます。このプロパティーが定義されていないか、指定されたフォーマット文字列が illegal である場合、デフォルトのフォーマットは実装に固有となります。
Formatter
コンストラクタと説明 |
---|
SimpleFormatter() |
public String format(LogRecord record)
フォーマットは、java.util.logging.SimpleFormatter.format
プロパティーでフォーマット文字列を指定することでカスタマイズできます。指定された LogRecord
は、次を呼び出すようにフォーマットされます。
String.format
(format, date, source, logger, level, message, thrown);
ここで、引数は次のとおりです。format
- java.util.logging.SimpleFormatter.format
プロパティーまたはデフォルトのフォーマットで指定された java.util.Formatter
のフォーマット文字列。date
- ログレコードのイベント時間を表す、Date
オブジェクト。source
- 使用可能な場合は、呼び出し元を表す文字列。使用できない場合は、ロガーの名前。logger
- ロガーの名前。level
- ログレベル。message
- Formatter.formatMessage(LogRecord)
メソッドから返された、フォーマットされたログメッセージ。java.text
のフォーマットを使用し、java.util.Formatter format
引数は使用しません。thrown
- ログレコードおよび改行文字で始まるそのバックトレースに関連付けられた throwable を表現する文字列 (存在する場合)。バックトレースがない場合は、空の文字列。フォーマット例を示します。
java.util.logging.SimpleFormatter.format="%4$s: %5$s [%1$tc]%n"
この例では、ログレベル (4$
)、ログメッセージ (5$
)、およびタイムスタンプ (1$
) を角括弧に囲んで 1 行で出力します。
WARNING: warning message [Tue Mar 22 13:11:31 PDT 2011]
java.util.logging.SimpleFormatter.format="%1$tc %2$s%n%4$s: %5$s%6$s%n"
この例は、1 行目にはタイムスタンプ (1$
) とソース (2$
)、2 行目にはログレベル (4$
) とログメッセージ (5$
)、使用可能な場合は、その後にスロー可能オブジェクトとそのバックトレース (6$
) を含む、2 行を出力します。
Tue Mar 22 13:11:31 PDT 2011 MyClass fatal SEVERE: several message with an exception java.lang.IllegalArgumentException: invalid argument at MyClass.mash(MyClass.java:9) at MyClass.crunch(MyClass.java:6) at MyClass.main(MyClass.java:3)
java.util.logging.SimpleFormatter.format="%1$tb %1$td, %1$tY %1$tl:%1$tM:%1$tS %1$Tp %2$s%n%4$s: %5$s%n"
次の例は、前の例と同じように 2 行を出力しますが、異なる日付/時間のフォーマットを使用し、スロー可能オブジェクトとそのバックトレースは出力しません。
Mar 22, 2011 1:11:31 PM MyClass fatal SEVERE: several message with an exception
このメソッドは、サブクラスでオーバーライドすることもできます。メッセージフィールドをローカライズし、フォーマットするには、Formatter.formatMessage(java.util.logging.LogRecord)
簡易メソッドを使用することをお勧めします。
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.