blob: a3dbce1ab09b8c2532e8ec246cc3fca5e116053d [file] [log] [blame]
<html dir="LTR">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252" />
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
<title>NDC Class</title>
<xml>
</xml>
<link rel="stylesheet" type="text/css" href="MSDN.css" />
</head>
<body id="bodyID" class="dtBODY">
<div id="nsbanner">
<div id="bannerrow1">
<table class="bannerparthead" cellspacing="0">
<tr id="hdr">
<td class="runninghead">Apache log4net� SDK Documentation - Microsoft .NET Framework 4.0</td>
<td class="product">
</td>
</tr>
</table>
</div>
<div id="TitleRow">
<h1 class="dtH1">NDC Class</h1>
</div>
</div>
<div id="nstext">
<p> Implementation of Nested Diagnostic Contexts. </p>
<p>For a list of all members of this type, see <a href="log4net.NDCMembers.html">NDC Members</a>.</p>
<p>
<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">System.Object</a>
<br />���<b>log4net.NDC</b></p>
<div class="syntax">
<span class="lang">[Visual�Basic]</span>
<br />NotInheritable�Public�Class�NDC</div>
<div class="syntax">
<span class="lang">[C#]</span>
<div>public�sealed�class�NDC</div>
</div>
<H4 class="dtH4">Thread Safety</H4>
<P>This type is safe for multithreaded operations.</P>
<h4 class="dtH4">Remarks</h4>
<p>
<blockquote class="dtBlock"><b>Note</b>���
<p> The NDC is deprecated and has been replaced by the <a href="log4net.ThreadContext.Stacks.html">Stacks</a>. The current NDC implementation forwards to the <code>ThreadContext.Stacks["NDC"]</code>. </p>
</blockquote>
<p> 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. </p>
<p> 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. </p>
<p> 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. </p>
</p>
<h4 class="dtH4">Example</h4>
<p>How to push a message into the context <pre class="code"><span class="lang">[C#]
</span>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
</pre>
</p>
<h4 class="dtH4">Requirements</h4>
<p>
<b>Namespace: </b>
<a href="log4net.html">log4net</a>
</p>
<p>
<b>Assembly: </b>log4net (in log4net.dll)
</p>
<h4 class="dtH4">See Also</h4>
<p>
<a href="log4net.NDCMembers.html">NDC Members</a> | <a href="log4net.html">log4net Namespace</a></p>
<object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;">
<param name="Keyword" value="NDC class, about NDC class">
</param>
</object>
<hr />
<div id="footer"><a href='http://logging.apache.org/log4net/'>Copyright 2004-2011 The Apache Software Foundation.</a><br></br>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</div>
</div>
</body>
</html>