Implementation of Nested Diagnostic Contexts.
For a list of all members of this type, see NDC Members.
System.Object
log4net.NDC
This type is safe for multithreaded operations.
NoteThe 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
[C#]
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)
NDC Members | log4net Namespace