Skip to content

Most visited

Recently visited

navigation

SocketHandler

public class SocketHandler
extends StreamHandler

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


Simple network logging Handler.

LogRecords are published to a network stream connection. By default the XMLFormatter class is used for formatting.

Configuration: By default each SocketHandler is initialized using the following LogManager configuration properties where <handler-name> refers to the fully-qualified class name of the handler. If properties are not defined (or have invalid values) then the specified default values are used.

  • <handler-name>.level specifies the default level for the Handler (defaults to Level.ALL).
  • <handler-name>.filter specifies the name of a Filter class to use (defaults to no Filter).
  • <handler-name>.formatter specifies the name of a Formatter class to use (defaults to java.util.logging.XMLFormatter).
  • <handler-name>.encoding the name of the character set encoding to use (defaults to the default platform encoding).
  • <handler-name>.host specifies the target host name to connect to (no default).
  • <handler-name>.port specifies the target TCP port to use (no default).

For example, the properties for SocketHandler would be:

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

For a custom handler, e.g. com.foo.MyHandler, the properties would be:

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

The output IO stream is buffered, but is flushed after each LogRecord is written.

Summary

Public constructors

SocketHandler()

Create a SocketHandler, using only LogManager properties (or their defaults).

SocketHandler(String host, int port)

Construct a SocketHandler using a specified host and port.

Public methods

void close()

Close this output stream.

void publish(LogRecord record)

Format and publish a LogRecord.

Inherited methods

From class java.util.logging.StreamHandler
From class java.util.logging.Handler
From class java.lang.Object

Public constructors

SocketHandler

added in API level 1
SocketHandler ()

Create a SocketHandler, using only LogManager properties (or their defaults).

Throws
IllegalArgumentException if the host or port are invalid or are not specified as LogManager properties.
IOException if we are unable to connect to the target host and port.

SocketHandler

added in API level 1
SocketHandler (String host, 
                int port)

Construct a SocketHandler using a specified host and port. The SocketHandler is configured based on LogManager properties (or their default values) except that the given target host and port arguments are used. If the host argument is empty, but not null String then the localhost is used.

Parameters
host String: target host.

port int: target port.

Throws
IllegalArgumentException if the host or port are invalid.
IOException if we are unable to connect to the target host and port.

Public methods

close

added in API level 1
void close ()

Close this output stream.

Throws
SecurityException if a security manager exists and if the caller does not have LoggingPermission("control").

publish

added in API level 1
void publish (LogRecord record)

Format and publish a LogRecord.

Parameters
record LogRecord: description of the log event. A null record is silently ignored and is not published

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Follow Google Developers on WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)