ch.qos.logback.classic.util

## Class LogbackMDCAdapter

- java.lang.Object
- - ch.qos.logback.classic.util.LogbackMDCAdapter

All Implemented Interfaces:
  org.slf4j.spi.MDCAdapter

    public final class LogbackMDCAdapter
    extends java.lang.Object
    implements org.slf4j.spi.MDCAdapter

A Mapped Diagnostic Context, or MDC in short, is an instrument for distinguishing interleaved log output from different sources. Log output is typically interleaved when a server handles multiple clients near-simultaneously.

The MDC is managed on a per thread basis. A child thread automatically inherits a copy of the mapped diagnostic context of its parent.

For more information about MDC, please refer to the online manual at http://logback.qos.ch/manual/mdc.html

Author:
  Ceki Gülcü

### Constructor Summary

Constructors
Constructor and Description
`LogbackMDCAdapter()`

### Method Summary

Methods
`void` `clear()` Clear all entries in the MDC.
`java.lang.String` `get(java.lang.String key)` Get the context identified by the `key` parameter.
`java.util.Map` `getCopyOfContextMap()` Return a copy of the current thread's context map.
`java.util.Set<java.lang.String>` `getKeys()` Returns the keys in the MDC as a `Set`.
`java.util.Map<java.lang.String,java.lang.String>` `getPropertyMap()` Get the current thread's MDC as a map.
`void` `put(java.lang.String key, java.lang.String val)` Put a context value (the `val` parameter) as identified with the `key` parameter into the current thread's context map.
`void` `remove(java.lang.String key)` Remove the the context identified by the `key` parameter.
`void` `setContextMap(java.util.Map contextMap)`

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

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

### Constructor Detail

#### LogbackMDCAdapter

    public LogbackMDCAdapter()

### Method Detail

#### put

    public void put(java.lang.String key,
           java.lang.String val)
             throws java.lang.IllegalArgumentException

Put a context value (the `val` parameter) as identified with the `key` parameter into the current thread's context map. Note that contrary to log4j, the `val` parameter can be null.

If the current thread does not have a context map it is created as a side effect of this call.

Specified by:
  `put` in interface `org.slf4j.spi.MDCAdapter`
Throws:
  `java.lang.IllegalArgumentException` - in case the "key" parameter is null

#### remove

    public void remove(java.lang.String key)

Remove the the context identified by the `key` parameter.

Specified by:
  `remove` in interface `org.slf4j.spi.MDCAdapter`

#### clear

    public void clear()

Clear all entries in the MDC.

Specified by:
  `clear` in interface `org.slf4j.spi.MDCAdapter`

#### get

    public java.lang.String get(java.lang.String key)

Get the context identified by the `key` parameter.

Specified by:
  `get` in interface `org.slf4j.spi.MDCAdapter`

#### getPropertyMap

    public java.util.Map<java.lang.String,java.lang.String> getPropertyMap()

Get the current thread's MDC as a map. This method is intended to be used internally.

#### getKeys

    public java.util.Set<java.lang.String> getKeys()

Returns the keys in the MDC as a `Set`. The returned value can be null.

#### getCopyOfContextMap

    public java.util.Map getCopyOfContextMap()

Return a copy of the current thread's context map. Returned value may be null.

Specified by:
  `getCopyOfContextMap` in interface `org.slf4j.spi.MDCAdapter`

#### setContextMap

    public void setContextMap(java.util.Map contextMap)

Specified by:
  `setContextMap` in interface `org.slf4j.spi.MDCAdapter`