Класс SimpleFormatter
public class SimpleFormatter extends Formatter
LogRecord в удобочитаемом формате. Обычно сводка занимает 1 или 2 строки. Конфигурация: SimpleFormatter инициализируется строкой формата, указанной в свойстве java.util.logging.SimpleFormatter.format, для форматирования сообщений журнала. Это свойство можно задать в файле конфигурации свойств ведения журнала или в качестве системного свойства. Если это свойство задано и в свойствах ведения журнала, и в системных свойствах, будет использоваться строка формата, указанная в системном свойстве. Если это свойство не задано или указанная строка формата является недопустимой, формат по умолчанию зависит от реализации.
- Начиная с версии:
- 1.4
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SimpleFormatter() |
Создает SimpleFormatter. |
Краткое описание методов
Методы, объявленные в классе Formatter
formatMessage, getHead, getTail | Модификатор и тип | Метод | Описание |
|---|---|---|
String |
formatMessage |
Локализует и форматирует строку сообщения из записи журнала. |
String |
getHead |
Возвращает строку заголовка для набора отформатированных записей. |
String |
getTail |
Возвращает строку завершения для набора отформатированных записей. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, является ли другой объект «равным» этому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация объявлена устаревшей и может быть удалена в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает значение хеш-кода для этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного интервала реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного интервала реального времени. |
Подробное описание конструкторов
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"Выводит одну строку с уровнем журнала (
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"Выводит две строки: первая содержит временную метку (
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"Выводит две строки, аналогичные приведенному выше примеру, но с другим форматом даты и времени; исключение и его трассировка стека не выводятся:
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(LogRecord).
© 1993, 2025, 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.