Класс SimpleFormatter
public class SimpleFormatter extends Formatter
LogRecord в удобочитаемом формате. Описание, как правило, занимает 1 или 2 строки. Настройка: Класс инициализируется строкой форматирования, указанной в свойстве java.util.logging.SimpleFormatter.format для форматирования сообщений журнала. Это свойство может быть определено в файле конфигурации свойств ведения журнала или в качестве системного свойства. Если это свойство задано как в файле конфигурации ведения журнала, так и в системных свойствах, будет использоваться строка форматирования, указанная в системных свойствах. Если это свойство не определено или заданная строка форматирования является неправильной, используется формат по умолчанию, зависящий от реализации.
- С момента:
- 1.4
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SimpleFormatter() |
Создает SimpleFormatter. |
Краткое описание методов
Методы, объявленные в классе java.util.logging.Formatter
formatMessage, getHead, getTail
Подробное описание конструкторов
SimpleFormatter
public SimpleFormatter()
SimpleFormatter.Подробное описание методов
format
public String format(LogRecord record)
Форматирование может быть настраиваемо, задав строку форматирования в свойстве java.util.logging.SimpleFormatter.format. Заданный LogRecord будет отформатирован как если бы он вызывался:
String.format(format, date, source, logger, level, message, thrown);
где аргументы:-
format- строка форматированияjava.util.Formatter, указанная в свойствеjava.util.logging.SimpleFormatter.formatили формат по умолчанию. -
date- объектZonedDateTime, представляющий время события записи журнала вZoneId.systemDefault()часовом поясе системы. -
source- строка, представляющая вызывающую сторону, если доступна; в противном случае имя логгера. -
logger- имя логгера. -
level- уровень журнала. -
message- отформатированное сообщение журнала, возвращённое методомFormatter.formatMessage(LogRecord). Использует форматированиеjava.textи не использует аргументjava.util.Formatter format. -
thrown- строка, представляющая исключение, связанное с записью журнала, и его трассировку, начинающуюся с символа новой строки, если таковое имеется; в противном случае пустая строка.
Примеры форматов:
-
java.util.logging.SimpleFormatter.format="%4$s: %5$s [%1$tc]%n"Выводит 1 строку с уровнем журнала (
4$), сообщением журнала (5$) и отметкой времени (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"Выводит 2 строки, где первая строка включает отметку времени (
1$) и источник (2$); вторая строка включает уровень журнала (4$) и сообщение журнала (5$) вместе с исключением и его трассировкой (6$), если таковое имеется: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 -
java.util.logging.SimpleFormatter.format="%1$tb %1$td, %1$tY %1$tl:%1$tM:%1$tS.%1$tN %1$Tp %2$s%n%4$s: %5$s%6$s%n"С JDK 9,
java.util.loggingиспользуетjava.timeдля создания более точных отметки времени. В приведенном выше формате можно добавить.%1$tNв форматирование даты/времени, чтобы также выводились наносекунды:Feb 06, 2015 5:33:10.279216000 PM example.Main main INFO: This is a test
Этот метод также может быть переопределён в подклассе. Рекомендуется использовать удобный метод Formatter.formatMessage(java.util.logging.LogRecord) для локализации и форматирования поля сообщения.
- Указано в:
-
formatв классеFormatter - Параметры:
-
record- запись журнала, подлежащая форматированию. - Возвращает:
- отформатированную запись журнала
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.logging/java/util/logging/SimpleFormatter.html