<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>RootLogger 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">RootLogger Class</h1>
      </div>
    </div>
    <div id="nstext">
      <p> The <b>RootLogger</b> sits at the root of the logger hierarchy tree. </p>
      <p>For a list of all members of this type, see <a href="log4net.Repository.Hierarchy.RootLoggerMembers.html">RootLogger Members</a>.</p>
      <p>
        <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">System.Object</a>
        <br />���<a href="log4net.Repository.Hierarchy.Logger.html">log4net.Repository.Hierarchy.Logger</a><br />������<b>log4net.Repository.Hierarchy.RootLogger</b></p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Public�Class�RootLogger<div>����Inherits�<a href="log4net.Repository.Hierarchy.Logger.html">Logger</a></div></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <div>public�class�RootLogger<b> : <a href="log4net.Repository.Hierarchy.Logger.html">Logger</a></b></div>
      </div>
      <H4 class="dtH4">Thread Safety</H4>
      <P>Public static (<b>Shared</b> in Visual Basic) members of this type are 
				safe for multithreaded operations. Instance members are <b>not</b> guaranteed to be 
				thread-safe.</P>
      <h4 class="dtH4">Remarks</h4>
            <p> The <b>RootLogger</b> is a regular <a href="log4net.Repository.Hierarchy.Logger.html">Logger</a> except that it provides several guarantees. </p>
            <p> First, it cannot be assigned a <code>null</code> level. Second, since the root logger cannot have a parent, the <a href="log4net.Repository.Hierarchy.RootLogger.EffectiveLevel.html">EffectiveLevel</a> property always returns the value of the level field without walking the hierarchy. </p>
            <h4 class="dtH4">Requirements</h4><p><b>Namespace: </b><a href="log4net.Repository.Hierarchy.html">log4net.Repository.Hierarchy</a></p><p><b>Assembly: </b>log4net (in log4net.dll)
					</p><h4 class="dtH4">See Also</h4><p><a href="log4net.Repository.Hierarchy.RootLoggerMembers.html">RootLogger Members</a> | <a href="log4net.Repository.Hierarchy.html">log4net.Repository.Hierarchy Namespace</a></p><object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;"><param name="Keyword" value="RootLogger class, about RootLogger 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>
