NDC ClassApache log4net™ SDK Documentation
Implementation of Nested Diagnostic Contexts.
Inheritance Hierarchy

OnlineSystem Object
  log4net NDC

Namespace: log4net
Assembly: log4net (in log4net.dll) Version: 1.2.15.0 (1.2.15.0)
Syntax

public sealed class NDC
Remarks

Note Note
The NDC is deprecated and has been replaced by the Stacks. The current NDC implementation forwards to the ThreadContext.Stacks["NDC"].

A Nested Diagnostic Context, or NDC in short, is an instrument to distinguish interleaved log output from different sources. Log output is typically interleaved when a server handles multiple clients near-simultaneously.

Interleaved log output can still be meaningful if each log entry from different contexts had a distinctive stamp. This is where NDCs come into play.

Note that NDCs are managed on a per thread basis. The NDC class is made up of static methods that operate on the context of the calling thread.

Examples

How to push a message into the context
using(NDC.Push("my context message"))
{
    ... all log calls will have 'my context message' included ...

} // at the end of the using block the message is automatically removed
Thread Safety

Static members of this type are safe for multi-threaded operations. Instance members of this type are safe for multi-threaded operations.
See Also