Log::Log4perl::MDC - Mapped Diagnostic Context


Log::Log4perl::MDC - Mapped Diagnostic Context


Log::Log4perl allows loggers to maintain global thread-specific data, called the Nested Diagnostic Context (NDC) and Mapped Diagnostic Context (MDC).

The MDC is a simple thread-specific hash table, in which the application can stuff values under certain keys and retrieve them later via the "%X{key}" placeholder in Log::Log4perl::Layout::PatternLayouts.

Log::Log4perl::MDC->put($key, $value);
Store a value $value under key $key in the map.

my $value = Log::Log4perl::MDC->get($key);
Retrieve the content of the map under the specified key. Typically done by %X{key} in Log::Log4perl::Layout::PatternLayout. If no value exists to the given key, undef is returned.

my $text = Log::Log4perl::MDC->remove();
Delete all entries from the map.

Returns a reference to the hash table.

Please note that all of the methods above are class methods, there's no instances of this class. Since the thread model in perl 5.8.0 is ``no shared data unless explicetly requested'' the data structures used are just global (and therefore thread-specific).


Mike Schilli, <log4perl@perlmeister.com>

 Log::Log4perl::MDC - Mapped Diagnostic Context