Spec-Zone.ru › OpenJDK 27

Класс SocketHandler

java.lang.Object
java.util.logging.Handler
java.util.logging.StreamHandler
java.util.logging.SocketHandler
public class SocketHandler extends StreamHandler
Простая сетевая регистрация Handler.

LogRecords публикуются в сетевое потоковое соединение. По умолчанию для форматирования используется класс XMLFormatter.

Конфигурация: По умолчанию каждый SocketHandler инициализируется с использованием следующих свойств конфигурации LogManager, где <handler-name> обозначает полное имя класса обработчика. Если свойства не заданы (или имеют недопустимые значения), используются указанные значения по умолчанию.

  • <handler-name>.level задаёт уровень по умолчанию для Handler (по умолчанию Level.ALL).
  • <handler-name>.filter задаёт имя класса Filter, который следует использовать (по умолчанию фильтр Filter не используется).
  • <handler-name>.formatter задаёт имя класса Formatter, который следует использовать (по умолчанию java.util.logging.XMLFormatter).
  • <handler-name>.encoding задаёт имя кодировки набора символов, которую следует использовать (по умолчанию используется системная кодировка платформы).
  • <handler-name>.host задаёт имя целевого узла для подключения (значение по умолчанию отсутствует).
  • <handler-name>.port задаёт целевой TCP-порт (значение по умолчанию отсутствует).

Например, свойства для SocketHandler будут следующими:

  • java.util.logging.SocketHandler.level=INFO
  • java.util.logging.SocketHandler.formatter=java.util.logging.SimpleFormatter

Для пользовательского обработчика, например com.foo.MyHandler, свойства будут следующими:

  • com.foo.MyHandler.level=INFO
  • com.foo.MyHandler.formatter=java.util.logging.SimpleFormatter

Поток вывода ввода-вывода буферизуется, но сбрасывается после записи каждой LogRecord.

Начиная с версии:
1.4

Краткое описание конструкторов

Конструктор Описание
SocketHandler()
Создаёт SocketHandler, используя только свойства LogManager (или их значения по умолчанию).
SocketHandler(String host, int port)
Создаёт SocketHandler, используя указанные узел и порт.

Краткое описание методов

Модификатор и тип Метод Описание
void close()
Закрывает этот выходной поток.
void publish(LogRecord record)
Форматирует и публикует LogRecord.

Методы, объявленные в классе StreamHandler

flush, isLoggable, setEncoding, setOutputStream
Модификатор и тип Метод Описание
void flush()
Сбрасывает все буферизованные сообщения.
boolean isLoggable(LogRecord record)
Проверяет, будет ли этот Handler фактически регистрировать указанное LogRecord.
void setEncoding(String encoding)
Задаёт (или изменяет) кодировку набора символов, используемую этим Handler.
protected void setOutputStream(OutputStream out)
Изменяет выходной поток.

Методы, объявленные в классе Handler

getEncoding, getErrorManager, getFilter, getFormatter, getLevel, reportError, setErrorManager, setFilter, setFormatter, setLevel
Модификатор и тип Метод Описание
String getEncoding()
Возвращает кодировку набора символов для этого Handler.
ErrorManager getErrorManager()
Получает ErrorManager для этого обработчика.
Filter getFilter()
Получает текущий Filter для этого Handler.
Formatter getFormatter()
Возвращает Formatter для этого Handler.
Level getLevel()
Получает уровень регистрации, определяющий, какие сообщения будут регистрироваться этим Handler.
protected void reportError(String msg, Exception ex, int code)
Защищённый вспомогательный метод для передачи ошибки в ErrorManager этого обработчика.
void setErrorManager(ErrorManager em)
Задаёт ErrorManager для этого обработчика.
void setFilter(Filter newFilter)
Задаёт Filter для управления выводом этого Handler.
void setFormatter(Formatter newFormatter)
Задаёт Formatter.
void setLevel(Level newLevel)
Задаёт уровень регистрации, определяющий, сообщения каких уровней будут регистрироваться этим Handler.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли другой объект этому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация устарела и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Приостанавливает текущий поток до его пробуждения, обычно посредством уведомления или прерывания.
final void wait(long timeoutMillis)
Приостанавливает текущий поток до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Приостанавливает текущий поток до его пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.

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

SocketHandler

public SocketHandler() throws IOException
Создаёт SocketHandler, используя только свойства LogManager (или их значения по умолчанию).
Вызывает исключение:
IllegalArgumentException — если узел или порт недопустимы либо не заданы в качестве свойств LogManager.
IOException — если не удаётся подключиться к целевому узлу и порту.

SocketHandler

public SocketHandler(String host, int port) throws IOException
Создаёт SocketHandler, используя указанные узел и порт. Конфигурация SocketHandler определяется свойствами LogManager (или их значениями по умолчанию), за исключением того, что используются заданные аргументы целевого узла и порта. Если аргумент узла — пустая, но не null-строка, используется localhost.
Параметры:
host — целевой узел.
port — целевой порт.
Вызывает исключение:
IllegalArgumentException — если узел или порт недопустимы.
IOException — если не удаётся подключиться к целевому узлу и порту.

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

close

public void close()
Закрывает этот выходной поток.
Переопределяет:
close в классе StreamHandler

publish

public void publish(LogRecord record)
Форматирует и публикует LogRecord.
Переопределяет:
publish в классе StreamHandler
Требования к реализации:
Этот метод не синхронизирован; подклассы не должны объявлять переопределённые методы publish() как synchronized, если они вызывают super.publish() или форматируют пользовательские аргументы. Дополнительные сведения см. в обсуждении в java.util.logging.Handler.
Параметры:
record — описание события регистрации. Запись со значением null без уведомления игнорируется и не публикуется

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API