Класс XMLFormatter

public class XMLFormatter
extends Formatter

Форматирует запись журнала (LogRecord) в стандартном формате XML.

Спецификация DTD приведена в приложении A к спецификации Java Logging APIs.

XMLFormatter может работать с произвольными кодировками символов, но рекомендуется использовать UTF-8. Кодировка символов может быть установлена в обработчике вывода (output Handler).

Требования к реализации:
Начиная с JDK 9, экземпляры LogRecord содержат Instant, который может содержать наносекунды ниже разрешения миллисекунд. Спецификация DTD была обновлена, чтобы разрешить необязательный элемент <nanos>. По умолчанию XMLFormatter будет вычислять корректировку наносекунд ниже разрешения миллисекунд (используя LogRecord.getInstant().getNano() % 1000_000) — и если эта величина не равна 0, это значение корректировки будет напечатано в новом элементе <nanos>. Время события можно затем восстановить, используя Instant.ofEpochSecond(millis/1000L, (millis % 1000L) * 1000_000L + nanos), где millis и nanos представляют числа, сериализованные в <millis> и <nanos> элементах соответственно.
Элемент <date> теперь будет содержать все время события, отформатированное с помощью DateTimeFormatter.ISO_INSTANT форматировщика.

Для совместимости со старыми парсерами, XMLFormatters могут быть сконфигурированы для возврата к старому формату, указав свойство <xml-formatter-fully-qualified-class-name>.useInstant = false свойства в конфигурации журналирования. Когда useInstant равно false, сохраняется старый формат. Когда useInstant равно true (по умолчанию), будет напечатан элемент <nanos>, и элемент <date> будет содержать отформатированное время события.

Например, чтобы сконфигурировать обычные экземпляры XMLFormatter для исключения нового элемента <nano>, в конфигурации журналирования можно указать java.util.logging.XMLFormatter.useInstant = false.

С:
1.4

Конструкторы

Конструктор Описание
XMLFormatter()

Создаёт новый экземпляр XMLFormatter.

Методы

Модификатор и тип Метод Описание
String format​(LogRecord record)

Форматирует заданное сообщение в XML.

String getHead​(Handler h)

Возвращает строку заголовка для набора записей, отформатированных в XML.

String getTail​(Handler h)

Возвращает строку подвала для набора записей, отформатированных в XML.

Методы, унаследованные от класса java.util.logging.Formatter

formatMessage

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

XMLFormatter

public XMLFormatter()

Создаёт новый экземпляр XMLFormatter.

Требования к реализации:
Начиная с JDK 9, XMLFormatter будет выводить время события записи (record event time) в формате Instant. Это время имеет наилучшее разрешение, доступное в системе. Элемент <date> будет содержать время события в формате, отформатированном с помощью DateTimeFormatter.ISO_INSTANT. Кроме того, будет напечатан необязательный элемент <nanos>, содержащий корректировку наносекунд, если время события содержит некоторые наносекунды ниже разрешения миллисекунд.

Это новое поведение может быть отключено, и старый формат восстановлен, указав свойство в конфигурации журналирования. Если LogManager.getLogManager().getProperty( this.getClass().getName()+".useInstant") равно "false" или "0", восстанавливается старый формат.

Подробное описание методов

format

public String format(LogRecord record)

Форматирует заданное сообщение в XML.

Этот метод может быть переопределён в подклассе. Рекомендуется использовать удобный метод Formatter.formatMessage(java.util.logging.LogRecord) для локализации и форматирования поля сообщения.

Задано в:
format в классе Formatter
Параметры:
record — запись журнала (log record) для форматирования.
Возвращает:
отформатированную запись журнала

getHead

public String getHead(Handler h)

Возвращает строку заголовка для набора записей, отформатированных в XML.

Переопределяет:
getHead в классе Formatter
Параметры:
h — целевой обработчик (может быть null)
Возвращает:
валидная строка XML

getTail

public String getTail(Handler h)

Возвращает строку подвала для набора записей, отформатированных в XML.

Переопределяет:
getTail в классе Formatter
Параметры:
h — целевой обработчик (может быть null)
Возвращает:
валидная строка XML

© 1993, 2020, 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/11/docs/api/java.logging/java/util/logging/XMLFormatter.html

Spec-Zone .ru
спецификации, руководства, описания, API