Apache log4net� SDK Documentation - Microsoft .NET Framework 4.0

NDC Class

Implementation of Nested Diagnostic Contexts.

For a list of all members of this type, see NDC Members.



Thread Safety

This type is safe for multithreaded operations.



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.


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 


Namespace: log4net

Assembly: log4net (in log4net.dll)

See Also

NDC Members | log4net Namespace