Класс Handler
- Прямые известные подклассы:
-
MemoryHandler,StreamHandler
public abstract class Handler extends Object
Handler принимает сообщения протоколирования из Logger и экспортирует их. Например, он может записывать их в консоль или файл, отправлять в сетевую службу протоколирования, передавать в системный журнал или выполнять любые другие действия. Объект Handler может быть отключён с помощью setLevel(Level.OFF) и снова включён с помощью setLevel с соответствующим уровнем.
Классы Handler обычно используют свойства LogManager для установки значений по умолчанию для Handler's Filter, Formatter, и Level. См. документацию для каждого конкретного класса Handler.
- С момента:
- 1.4
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор по умолчанию. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract void |
close() |
Закрыть Handler и освободить все связанные ресурсы. |
abstract void |
flush() |
Очистить буферизованный вывод. |
String |
getEncoding() |
Возвращает кодировку символов для этого Handler. |
ErrorManager |
getErrorManager() |
Получает ErrorManager для этого Handler. |
Filter |
getFilter() |
Получить текущий Filter для этого Handler. |
Formatter |
getFormatter() |
Возвращает Formatter для этого Handler. |
Level |
getLevel() |
Получить уровень протоколирования, определяющий, какие сообщения будут записаны этим Handler. |
boolean |
isLoggable |
Проверить, будет ли это Handler фактически протоколировать данное LogRecord. |
abstract void |
publish |
Опубликовать LogRecord. |
protected void |
reportError |
Защищённый вспомогательный метод для сообщения об ошибке в ErrorManager этого Handler. |
void |
setEncoding |
Установить кодировку символов, используемую этим Handler. |
void |
setErrorManager |
Определить ErrorManager для этого Handler. |
void |
setFilter |
Установить Filter для управления выводом в этом Handler. |
void |
setFormatter |
Установить Formatter. |
void |
setLevel |
Установить уровень протоколирования, определяющий, какие уровни сообщений будут протоколированы этим Handler. |
Подробное описание конструкторов
Handler
protected Handler()
Handler имеет уровень логирования Level.ALL, без Formatter и без Filter. По умолчанию устанавливается экземпляр ErrorManager в качестве ErrorManager.Подробное описание методов
publish
public abstract void publish(LogRecord record)
LogRecord. Изначально запрос логирования был сделан к объекту Logger, который инициализировал LogRecord и передал его сюда.
Handler отвечает за форматирование сообщения, при необходимости. Форматирование должно включать локализация.
- Параметры:
-
record- описание события логирования. Нулевой объект игнорируется и не публикуется
flush
public abstract void flush()
close
public abstract void close() throws SecurityException
Handler и освободить все связанные ресурсы. Метод close выполнит flush и затем закроет Handler. После вызова close этот Handler больше не должен использоваться. Вызовы методов могут быть проигнорированы или могут вызывать исключения времени выполнения.
- Исключения:
-
SecurityException- если существует менеджер безопасности и если у вызывающего объекта нетLoggingPermission("control").
setFormatter
public void setFormatter(Formatter newFormatter) throws SecurityException
Formatter. Этот Formatter будет использоваться для форматирования LogRecords для этого Handler. Некоторые Handlers могут не использовать Formatters, в этом случае Formatter будет запомнено, но не использовано.
- Параметры:
-
newFormatter- используемыйFormatter(не может быть null) - Исключения:
-
SecurityException- если существует менеджер безопасности и если у вызывающего объекта нетLoggingPermission("control").
getFormatter
public Formatter getFormatter()
Formatter для этого Handler.- Возвращаемое значение:
Formatter(может быть null).
setEncoding
public void setEncoding(String encoding) throws SecurityException, UnsupportedEncodingException
Handler. Кодировка должна быть установлена до записи любых LogRecords в Handler.
- Параметры:
-
encoding- Имя поддерживаемой кодировки символов. Может быть null, чтобы указать кодировку по умолчанию платформы. - Исключения:
-
SecurityException- если менеджер безопасности существует и у вызывающего объекта нетLoggingPermission("control"). -
UnsupportedEncodingException- если указанная кодировка не поддерживается.
getEncoding
public String getEncoding()
Handler.- Возвращаемое значение:
- Имя кодировки. Может быть null, что указывает на использование кодировки по умолчанию.
setFilter
public void setFilter(Filter newFilter) throws SecurityException
Filter для управления выводом в этот Handler. Для каждого вызова publish Handler вызовет этот Filter (если он не равен null), чтобы проверить, следует ли публиковать LogRecord или отбросить.
- Параметры:
-
newFilter- объектFilter(может быть null) - Исключения:
-
SecurityException- если менеджер безопасности существует и у вызывающего объекта нетLoggingPermission("control").
getFilter
public Filter getFilter()
Filter для этого Handler.- Возвращаемое значение:
- объект
Filter(может быть null)
setErrorManager
public void setErrorManager(ErrorManager em)
Метод "error" ErrorManager будет вызван в случае возникновения ошибок при использовании этого обработчика.
- Параметры:
-
em- новый ErrorManager - Исключения:
-
SecurityException- если существует менеджер безопасности и у вызывающего объекта нетLoggingPermission("control").
getErrorManager
public ErrorManager getErrorManager()
- Возвращаемое значение:
- ErrorManager для этого обработчика
- Исключения:
-
SecurityException- если существует менеджер безопасности и у вызывающего объекта нетLoggingPermission("control").
reportError
protected void reportError(String msg, Exception ex, int code)
- Параметры:
-
msg- описательная строка (может быть null) -
ex- исключение (может быть null) -
code- код ошибки, определенный в ErrorManager
setLevel
public void setLevel(Level newLevel) throws SecurityException
Handler. Уровни сообщений ниже этого значения будут отброшены. Цель состоит в том, чтобы позволить разработчикам включить обширное логирование, но ограничить сообщения, отправляемые в определенные Handlers.
- Параметры:
-
newLevel- новое значение уровня логирования - Исключения:
-
SecurityException- если существует менеджер безопасности и у вызывающего объекта нетLoggingPermission("control").
getLevel
public Level getLevel()
Handler. Уровни сообщений ниже этого уровня будут отброшены.- Возвращаемое значение:
- уровень регистрируемых сообщений.
isLoggable
public boolean isLoggable(LogRecord record)
Handler действительно регистрировать данное LogRecord. Этот метод проверяет, имеет ли LogRecord соответствующий Level и удовлетворяет ли он каким-либо Filter. Он также может выполнять другие проверки, специфичные для Handler, которые могут предотвратить обработчик от регистрации LogRecord. Он вернет false, если LogRecord равно null.
- Параметры:
-
record-LogRecord(может быть null). - Возвращаемое значение:
- true, если
LogRecordбудет зарегистрировано.
© 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/Handler.html