log4netNDC
Namespace: log4net
Assembly: log4net (in log4net.dll) Version: 2.0.8.0-.NET 4.0
The NDC type exposes the following members.
| Name | Description | |
|---|---|---|
| Depth |
Gets the current context depth.
|
| Name | Description | |
|---|---|---|
| Clear |
Clears all the contextual information held on the current thread.
| |
| CloneStack |
Creates a clone of the stack of context information.
| |
| Equals | (Inherited from Object.) | |
| GetHashCode |
Serves as a hash function for a particular type.
(Inherited from Object.) | |
| GetType |
Gets the Type of the current instance.
(Inherited from Object.) | |
| Inherit |
Inherits the contextual information from another thread.
| |
| Pop |
Removes the top context from the stack.
| |
| Push |
Pushes a new context message.
| |
| PushFormat |
Pushes a new context message.
| |
| Remove |
Removes the context information for this thread. It is
not required to call this method.
| |
| SetMaxDepth |
Forces the stack depth to be at most maxDepth.
| |
| ToString | (Inherited from Object.) |
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.
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