Logback API
Version 0.9.8

org.slf4j.impl
Class LogbackMDCAdapter

java.lang.Object
  extended by org.slf4j.impl.LogbackMDCAdapter
All Implemented Interfaces:
MDCAdapter

public class LogbackMDCAdapter
extends Object
implements 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ü

Method Summary
 void clear()
          Clear all entries in the MDC.
 String get(String key)
          Get the context identified by the key parameter.
 Set<String> getKeys()
          Returns the keys in the MDC as a Set.
 Map<String,String> getPropertyMap()
          Get the current thread's MDC as a map.
 void put(String key, String val)
          Put a context value (the val parameter) as identified with the key parameter into the current thread's context map.
 void remove(String key)
          Remove the the context identified by the key parameter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

put

public void put(String key,
                String val)
         throws 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.

Each time a value is added, a new instance of the map is created. This is to be certain that the serialization process will operate on the updated map and not send a reference to the old map, thus not allowing the remote logback component to see the latest changes.

Specified by:
put in interface MDCAdapter
Throws:
IllegalArgumentException - in case the "key" parameter is null

get

public String get(String key)
Get the context identified by the key parameter.

This method has no side effects.

Specified by:
get in interface MDCAdapter

remove

public void remove(String key)
Remove the the context identified by the key parameter.

Each time a value is removed, a new instance of the map is created. This is to be certain that the serialization process will operate on the updated map and not send a reference to the old map, thus not allowing the remote logback component to see the latest changes.

Specified by:
remove in interface MDCAdapter

clear

public void clear()
Clear all entries in the MDC.

Specified by:
clear in interface MDCAdapter

getPropertyMap

public Map<String,String> getPropertyMap()
Get the current thread's MDC as a map. This method is intended to be used internally.


getKeys

public Set<String> getKeys()
Returns the keys in the MDC as a Set. The returned value can be null.


Logback API
Version 0.9.8

Copyright © 2005-2008 QOS.ch. All Rights Reserved.