Module java.logging
Package java.util.logging

## Class ConsoleHandler

- java.lang.Object
- - java.util.logging.Handler
  - - java.util.logging.StreamHandler
    - - java.util.logging.ConsoleHandler

    public class ConsoleHandler
    extends StreamHandler

This `Handler` publishes log records to `System.err`. By default the `SimpleFormatter` is used to generate brief summaries.

Configuration: By default each `ConsoleHandler` 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.INFO`).
- <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.SimpleFormatter`).
- <handler-name>.encoding the name of the character set encoding to use (defaults to the default platform encoding).

For example, the properties for `ConsoleHandler` would be:

- java.util.logging.ConsoleHandler.level=INFO
- java.util.logging.ConsoleHandler.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

Since:
  1.4

### Constructor Summary

Constructors
Constructor and Description
`ConsoleHandler()` Create a `ConsoleHandler` for `System.err`.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `close()` Override `StreamHandler.close` to do a flush but not to close the output stream.
`void` `publish(LogRecord record)` Publish a `LogRecord`.

### Methods inherited from class java.util.logging.Handler

`getEncoding, getErrorManager, getFilter, getFormatter, getLevel, reportError, setErrorManager, setFilter, setFormatter, setLevel`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from class java.util.logging.StreamHandler

`flush, isLoggable, setEncoding, setOutputStream`

### Constructor Detail

#### ConsoleHandler

    public ConsoleHandler()

Create a `ConsoleHandler` for `System.err`.

The `ConsoleHandler` is configured based on `LogManager` properties (or their default values).

### Method Detail

#### publish

    public void publish(LogRecord record)

Publish a `LogRecord`.

The logging request was made initially to a `Logger` object, which initialized the `LogRecord` and forwarded it here.

Overrides:
  `publish` in class `StreamHandler`
Parameters:
  `record` - description of the log event. A null record is silently ignored and is not published

#### close

    public void close()

Override `StreamHandler.close` to do a flush but not to close the output stream. That is, we do not close `System.err`.

Overrides:
  `close` in class `StreamHandler`