public class

SocketHandler

extends StreamHandler
java.lang.Object
   ↳ java.util.logging.Handler
     ↳ java.util.logging.StreamHandler
       ↳ java.util.logging.SocketHandler

Class Overview

A handler that writes log messages to a socket connection.

This handler reads the following properties from the log manager to initialize itself:

  • java.util.logging.ConsoleHandler.level specifies the logging level, defaults to Level.ALL if this property is not found or has an invalid value.
  • java.util.logging.SocketHandler.filter specifies the name of the filter class to be associated with this handler, defaults to null if this property is not found or has an invalid value.
  • java.util.logging.SocketHandler.formatter specifies the name of the formatter class to be associated with this handler, defaults to java.util.logging.XMLFormatter if this property is not found or has an invalid value.
  • java.util.logging.SocketHandler.encoding specifies the encoding this handler will use to encode log messages, defaults to null if this property is not found or has an invalid value.
  • java.util.logging.SocketHandler.host specifies the name of the host that this handler should connect to. There's no default value for this property.
  • java.util.logging.SocketHandler.encoding specifies the port number that this handler should connect to. There's no default value for this property.

This handler buffers the outgoing messages, but flushes each time a log record has been published.

This class is not thread-safe.

Summary

Public Constructors
SocketHandler()
Constructs a SocketHandler object using the properties read by the log manager, including the host name and port number.
SocketHandler(String host, int port)
Constructs a SocketHandler object using the specified host name and port number together with other properties read by the log manager.
Public Methods
void close()
Closes this handler.
void publish(LogRecord record)
Logs a record if necessary.
[Expand]
Inherited Methods
From class java.util.logging.StreamHandler
From class java.util.logging.Handler
From class java.lang.Object

Public Constructors

public SocketHandler ()

Since: API Level 1

Constructs a SocketHandler object using the properties read by the log manager, including the host name and port number. Default formatting uses the XMLFormatter class and level is set to ALL.

Throws
IOException if failed to connect to the specified host and port.
IllegalArgumentException if the host name or port number is illegal.
SecurityException if a security manager determines that the caller does not have the required permission to control this handler.

public SocketHandler (String host, int port)

Since: API Level 1

Constructs a SocketHandler object using the specified host name and port number together with other properties read by the log manager. Default formatting uses the XMLFormatter class and level is set to ALL.

Parameters
host the host name
port the port number
Throws
IOException if failed to connect to the specified host and port.
IllegalArgumentException if the host name or port number is illegal.
SecurityException if a security manager determines that the caller does not have the required permission to control this handler.

Public Methods

public void close ()

Since: API Level 1

Closes this handler. The network connection to the host is also closed.

Throws
SecurityException If a security manager determines that the caller does not have the required permission to control this handler.

public void publish (LogRecord record)

Since: API Level 1

Logs a record if necessary. A flush operation will be done afterwards.

Parameters
record the log record to be logged.