APIdia Launch Partner
Top Description Interfaces Classes
module java.logging

Package java.util.logging


Provides the classes and interfaces of the Java 2 platform's core logging facilities. The central goal of the logging APIs is to support maintaining and servicing software at customer sites.

There are four main target uses of the logs:

  1. Problem diagnosis by end users and system administrators. This consists of simple logging of common problems that can be fixed or tracked locally, such as running out of resources, security failures, and simple configuration errors.
  2. Problem diagnosis by field service engineers. The logging information used by field service engineers may be considerably more complex and verbose than that required by system administrators. Typically such information will require extra logging within particular subsystems.
  3. Problem diagnosis by the development organization. When a problem occurs in the field, it may be necessary to return the captured logging information to the original development team for diagnosis. This logging information may be extremely detailed and fairly inscrutable. Such information might include detailed tracing on the internal execution of particular subsystems.
  4. Problem diagnosis by developers. The Logging APIs may also be used to help debug an application under development. This may include logging information generated by the target application as well as logging information generated by lower-level libraries. Note however that while this use is perfectly reasonable, the logging APIs are not intended to replace the normal debugging and profiling tools that may already exist in the development environment.

The key elements of this package include:

The Logging APIs offer both static and dynamic configuration control. Static control enables field service staff to set up a particular configuration and then re-launch the application with the new logging settings. Dynamic control allows for updates to the logging configuration within a currently running program. The APIs also allow for logging to be enabled or disabled for different functional areas of the system. For example, a field service engineer might be interested in tracing all AWT events, but might have no interest in socket events or memory management.

Null Pointers

In general, unless otherwise noted in the javadoc, methods and constructors will throw NullPointerException if passed a null argument. The one broad exception to this rule is that the logging convenience methods in the Logger class (the config, entering, exiting, fine, finer, finest, log, logp, logrb, severe, throwing, and warning methods) will accept null values for all arguments except for the initial Level argument (if any).

Related Documentation

For an overview of control flow, please refer to the Java Logging Overview

Since
1.4

Interface Summary

Modifier and TypeInterface and Description
public interface
Filter

A Filter can be used to provide fine grain control over what is logged, beyond the control provided by log levels.

public interface
LoggingMXBean

Deprecated since 9. LoggingMXBean is no longer a platform MXBean and is replaced with java.management/java.lang.management.PlatformLoggingMXBean.
The management interface for the logging facility.

Class Summary

Modifier and TypeClass and Description
public class
ConsoleHandler

This Handler publishes log records to System.err.

public class
ErrorManager

ErrorManager objects can be attached to Handlers to process any error that occurs on a Handler during Logging.

public class
FileHandler

Simple file logging Handler.

public abstract class
Formatter

A Formatter provides support for formatting LogRecords.

public abstract class
Handler

A Handler object takes log messages from a Logger and exports them.

public class
Level

The Level class defines a set of standard logging levels that can be used to control logging output.

public class
Logger

A Logger object is used to log messages for a specific system or application component.

pack-priv class
Logging

References Deprecated LoggingMXBean is deprecated or references (maybe indirectly) at least one deprecated element.
Logging is the implementation class of LoggingMXBean.
public class
LoggingPermission

Deprecated for removal since 25. This permission cannot be used for controlling access to resources as the Security Manager is no longer supported.
This class is for logging permissions.
public class
LogManager

There is a single global LogManager object that is used to maintain a set of shared state about Loggers and log services.

public class
LogRecord

LogRecord objects are used to pass logging requests between the logging framework and individual log Handlers.

public class
MemoryHandler

Handler that buffers requests in a circular buffer in memory.

public class
SimpleFormatter

Print a brief summary of the LogRecord in a human readable format.

public class
SocketHandler

Simple network logging Handler.

public class
StreamHandler

Stream based logging Handler.

public class
XMLFormatter

Format a LogRecord into a standard XML format.