Класс Handler
- Прямые известные подклассы:
-
MemoryHandler,StreamHandler
public abstract class Handler extends Object
Handler получает сообщения журнала от Logger и экспортирует их. Например, он может записывать их в консоль или файл, отправлять в службу сетевого ведения журнала или пересылать в журнал ОС, или как-то ещё. Объект Handler может быть отключён выполнением setLevel(Level.OFF), и может быть снова включён выполнением setLevel с соответствующим уровнем.
Классы Handler обычно используют свойства LogManager для установки значений по умолчанию для Handler Filter, Formatter, и Level. См. конкретную документацию для каждого конкретного класса Handler.
- С:
- 1.4
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор по умолчанию. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract void |
close() |
Закрыть Handler и освободить все связанные ресурсы. |
abstract void |
flush() |
Очистить буферизованный вывод. |
String |
getEncoding() |
Возвращает кодировку символов для этого Handler. |
ErrorManager |
getErrorManager() |
Получает ErrorManager для этого обработчика. |
Filter |
getFilter() |
Получить текущий Filter для этого Handler. |
Formatter |
getFormatter() |
Возвращает Formatter для этого Handler. |
Level |
getLevel() |
Получить уровень журнала, определяющий, какие сообщения будут зарегистрированы этим Handler. |
boolean |
isLoggable |
Проверить, будет ли этот Handler действительно регистрировать данный LogRecord. |
abstract void |
publish |
Опубликовать LogRecord. |
protected void |
reportError |
Защищенный вспомогательный метод для сообщения об ошибке в ErrorManager этого обработчика. |
void |
setEncoding |
Установить кодировку символов, используемую этим Handler. |
void |
setErrorManager |
Определить ErrorManager для этого обработчика. |
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 будет вызван, если возникнут ошибки при использовании этого Handler.
- Параметры:
-
em- новый ErrorManager - Исключения:
-
SecurityException- если существует менеджер безопасности и у вызывающей стороны нетLoggingPermission("control").
getErrorManager
public ErrorManager getErrorManager()
- Возвращаемое значение:
- ErrorManager для этого Handler
- Исключения:
-
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, 2023, 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/21/docs/api/java.logging/java/util/logging/Handler.html