java.util.logging.ConsoleHandler.pattern という行を追加することでパターンを変更できると思いますが、 %u %h などのパターン情報はどこで確認できますか?
2 に答える
この質問はすでに誰かによって回答されていますが、いくつかの新しい情報を提供したいと思います:
Java 7 以降、.log ファイルを使用してログ メッセージの出力パターンを構成できますSimpleFormatter
。
このプロパティは、ロギング プロパティ ファイルで使用できます。
java.util.logging.SimpleFormatter.format = [%1$tc] %4$s: %2$s - %5$s %6$s%n
パターン構文の詳細が必要な場合は、http: //docs.oracle.com/javase/7/docs/api/java/util/Formatter.htmlを参照してください。
上記のプロパティ値の数字は、フォーマッタに提供されるパラメータを示しています。詳細については、Java の公式ドキュメントを参照してください: http://docs.oracle.com/javase/7/docs/api/java/util/logging/SimpleFormatter.html
構成ファイルの例logging.properties
:
handlers = java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
# Pattern works since Java 7
java.util.logging.SimpleFormatter.format = [%1$tc] %4$s: %2$s - %5$s %6$s%n
# Configure logging levels
# Available log levels are:
# OFF, SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL
# root logger
.level = WARNING
# child logger
org.example.level = ALL
Java プログラムを呼び出すときに、構成ファイルをパラメーターとして指定できます。
java -Djava.util.logging.config.file=logging.properties -jar myProgram.jar
編集:以下はJava 6の時点で書かれています。7以降については、以下のDavidの回答を参照してください。
AFAIKそのようなプロパティはありません。ありますが、これはログ形式ではなく、出力ファイル名java.util.logging.FileHandler.pattern
のパターンを設定するためのものです。
util logging APIで出力形式を構成する方法は、を設定することFormatter
です。デフォルトでは、SimpleFormatter
はに接続されていますConsoleHandler
。このフォーマッタは単にパターンをハードコーディングするだけで、設定することはできません。
別の出力形式が必要な場合は、独自の出力形式を実装するか、 logbackFormatter
などの別のログフレームワークを使用する必要があります。