Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Ctors](https://developer.android.com/reference/java/util/logging/ConsoleHandler#pubctors) \| [Methods](https://developer.android.com/reference/java/util/logging/ConsoleHandler#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/java/util/logging/ConsoleHandler#inhmethods)

# ConsoleHandler

` public class ConsoleHandler `   
` ` ` ` ` extends https://developer.android.com/reference/java/util/logging/StreamHandler ` ` `

|---|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||||
| ↳ | [java.util.logging.Handler](https://developer.android.com/reference/java/util/logging/Handler) |||
|   | ↳ | [java.util.logging.StreamHandler](https://developer.android.com/reference/java/util/logging/StreamHandler) ||
|   |   | ↳ | java.util.logging.ConsoleHandler |

<br />

*** ** * ** ***

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

<br />

## Summary

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/java/util/logging/ConsoleHandler#ConsoleHandler()() ` Create a ConsoleHandler for System.err. |

| ### Public methods ||
|---|---|
| ` void` | ` https://developer.android.com/reference/java/util/logging/ConsoleHandler#close()() ` Override StreamHandler.close to do a flush but not to close the output stream. |
| ` void` | ` https://developer.android.com/reference/java/util/logging/ConsoleHandler#publish(java.util.logging.LogRecord)(https://developer.android.com/reference/java/util/logging/LogRecord record) ` Publish a LogRecord. |

### Inherited methods

From class ` https://developer.android.com/reference/java/util/logging/StreamHandler ` ` void` ` https://developer.android.com/reference/java/util/logging/StreamHandler#close()() `

Close the current output stream.
` void` ` https://developer.android.com/reference/java/util/logging/StreamHandler#flush()() `

Flush any buffered messages.
` boolean` ` https://developer.android.com/reference/java/util/logging/StreamHandler#isLoggable(java.util.logging.LogRecord)(https://developer.android.com/reference/java/util/logging/LogRecord record) `

Check if this Handler would actually log a given LogRecord.
` void` ` https://developer.android.com/reference/java/util/logging/StreamHandler#publish(java.util.logging.LogRecord)(https://developer.android.com/reference/java/util/logging/LogRecord record) `

Format and publish a LogRecord.
` void` ` https://developer.android.com/reference/java/util/logging/StreamHandler#setEncoding(java.lang.String)(https://developer.android.com/reference/java/lang/String encoding) `

Set (or change) the character encoding used by this Handler.
` void` ` https://developer.android.com/reference/java/util/logging/StreamHandler#setOutputStream(java.io.OutputStream)(https://developer.android.com/reference/java/io/OutputStream out) `

Change the output stream.
From class ` https://developer.android.com/reference/java/util/logging/Handler ` ` abstract void` ` https://developer.android.com/reference/java/util/logging/Handler#close()() `

Close the Handler and free all associated resources.
` abstract void` ` https://developer.android.com/reference/java/util/logging/Handler#flush()() `

Flush any buffered output.
` https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/util/logging/Handler#getEncoding()() `

Return the character encoding for this Handler.
` https://developer.android.com/reference/java/util/logging/ErrorManager` ` https://developer.android.com/reference/java/util/logging/Handler#getErrorManager()() `

Retrieves the ErrorManager for this Handler.
` https://developer.android.com/reference/java/util/logging/Filter` ` https://developer.android.com/reference/java/util/logging/Handler#getFilter()() `

Get the current Filter for this Handler.
` https://developer.android.com/reference/java/util/logging/Formatter` ` https://developer.android.com/reference/java/util/logging/Handler#getFormatter()() `

Return the Formatter for this Handler.
` https://developer.android.com/reference/java/util/logging/Level` ` https://developer.android.com/reference/java/util/logging/Handler#getLevel()() `

Get the log level specifying which messages will be logged by this Handler.
` boolean` ` https://developer.android.com/reference/java/util/logging/Handler#isLoggable(java.util.logging.LogRecord)(https://developer.android.com/reference/java/util/logging/LogRecord record) `

Check if this Handler would actually log a given LogRecord.
` abstract void` ` https://developer.android.com/reference/java/util/logging/Handler#publish(java.util.logging.LogRecord)(https://developer.android.com/reference/java/util/logging/LogRecord record) `

Publish a LogRecord.
` void` ` https://developer.android.com/reference/java/util/logging/Handler#reportError(java.lang.String,%20java.lang.Exception,%20int)(https://developer.android.com/reference/java/lang/String msg, https://developer.android.com/reference/java/lang/Exception ex, int code) `

Protected convenience method to report an error to this Handler's ErrorManager.
` void` ` https://developer.android.com/reference/java/util/logging/Handler#setEncoding(java.lang.String)(https://developer.android.com/reference/java/lang/String encoding) `

Set the character encoding used by this Handler.
` void` ` https://developer.android.com/reference/java/util/logging/Handler#setErrorManager(java.util.logging.ErrorManager)(https://developer.android.com/reference/java/util/logging/ErrorManager em) `

Define an ErrorManager for this Handler.
` void` ` https://developer.android.com/reference/java/util/logging/Handler#setFilter(java.util.logging.Filter)(https://developer.android.com/reference/java/util/logging/Filter newFilter) `

Set a Filter to control output on this Handler.
` void` ` https://developer.android.com/reference/java/util/logging/Handler#setFormatter(java.util.logging.Formatter)(https://developer.android.com/reference/java/util/logging/Formatter newFormatter) `

Set a Formatter.
` void` ` https://developer.android.com/reference/java/util/logging/Handler#setLevel(java.util.logging.Level)(https://developer.android.com/reference/java/util/logging/Level newLevel) `

Set the log level specifying which message levels will be logged by this Handler.
From class ` https://developer.android.com/reference/java/lang/Object ` ` https://developer.android.com/reference/java/lang/Object` ` https://developer.android.com/reference/java/lang/Object#clone()() `

Creates and returns a copy of this object.
` boolean` ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) `

Indicates whether some other object is "equal to" this one.
` void` ` https://developer.android.com/reference/java/lang/Object#finalize()() `

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
` final https://developer.android.com/reference/java/lang/Class<?>` ` https://developer.android.com/reference/java/lang/Object#getClass()() `

Returns the runtime class of this `Object`.
` int` ` https://developer.android.com/reference/java/lang/Object#hashCode()() `

Returns a hash code value for the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#notify()() `

Wakes up a single thread that is waiting on this object's monitor.
` final void` ` https://developer.android.com/reference/java/lang/Object#notifyAll()() `

Wakes up all threads that are waiting on this object's monitor.
` https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/lang/Object#toString()() `

Returns a string representation of the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait()() `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*.

## Public constructors

### ConsoleHandler

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public ConsoleHandler ()
```

Create a ConsoleHandler for System.err.

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

<br />

## Public methods

### close

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

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

<br />

### publish

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

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

<br />

<br />

| Parameters ||
|---|---|
| `record` | `LogRecord`: description of the log event. A null record is silently ignored and is not published <br /> |