﻿<html><head><meta http-equiv="X-UA-Compatible" content="IE=edge" /><link rel="shortcut icon" href="../icons/favicon.ico" /><style type="text/css">.OH_CodeSnippetContainerTabLeftActive, .OH_CodeSnippetContainerTabLeft,.OH_CodeSnippetContainerTabLeftDisabled { }.OH_CodeSnippetContainerTabRightActive, .OH_CodeSnippetContainerTabRight,.OH_CodeSnippetContainerTabRightDisabled { }.OH_footer { }</style><link rel="stylesheet" type="text/css" href="../styles/branding.css" /><link rel="stylesheet" type="text/css" href="../styles/branding-en-US.css" /><script type="text/javascript" src="../scripts/branding.js"> </script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Level Class</title><meta name="Language" content="en-us" /><meta name="System.Keywords" content="Level class" /><meta name="System.Keywords" content="log4net.Core.Level class" /><meta name="System.Keywords" content="Level class, about Level class" /><meta name="Microsoft.Help.F1" content="log4net.Core.Level" /><meta name="Microsoft.Help.Id" content="T:log4net.Core.Level" /><meta name="Description" content="Defines the default set of levels recognized by the system." /><meta name="Microsoft.Help.ContentType" content="Reference" /><meta name="BrandingAware" content="true" /><meta name="container" content="log4net.Core" /><meta name="file" content="T_log4net_Core_Level" /><meta name="guid" content="T_log4net_Core_Level" /></head><body onload="OnLoad('cs')"><input type="hidden" id="userDataCache" class="userDataStyle" /><div class="OH_outerDiv"><div class="OH_outerContent"><table class="TitleTable"><tr><td class="OH_tdTitleColumn">Level Class</td><td class="OH_tdRunningTitleColumn">Apache log4net™ SDK Documentation</td></tr></table><div id="mainSection"><div id="mainBody"><span class="introStyle"></span><div class="summary">
            Defines the default set of levels recognized by the system.
            </div><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Inheritance Hierarchy</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">System<span id="LSTBCDE645E_0"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTBCDE645E_0?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>Object</a><br />  <span class="selflink">log4net.Core<span id="LSTBCDE645E_1"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTBCDE645E_1?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>Level</span><br /><p> </p><strong>Namespace:</strong> <a href="N_log4net_Core.htm">log4net.Core</a><br /><strong>Assembly:</strong> log4net (in log4net.dll) Version: 2.0.6.0-.NET 4.0<div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Syntax</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><div class="OH_CodeSnippetContainer"><div class="OH_CodeSnippetContainerTabs"><div class="OH_CodeSnippetContainerTabLeft" id="ID0EDCA_tabimgleft"> </div><div id="ID0EDCA_tab1" class="OH_CodeSnippetContainerTabFirst"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','cs','1','4');return false;">C#</a></div><div id="ID0EDCA_tab2" class="OH_CodeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','vb','2','4');return false;">VB</a></div><div id="ID0EDCA_tab3" class="OH_CodeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','cpp','3','4');return false;">C++</a></div><div id="ID0EDCA_tab4" class="OH_CodeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','fs','4','4');return false;">F#</a></div><div class="OH_CodeSnippetContainerTabRight" id="ID0EDCA_tabimgright"> </div></div><div class="OH_CodeSnippetContainerCodeCollection"><div class="OH_CodeSnippetToolBar"><div class="OH_CodeSnippetToolBarText"><a id="ID0EDCA_copyCode" href="#" onclick="javascript:CopyToClipboard('ID0EDCA');return false;" title="Copy">Copy</a></div></div><div id="ID0EDCA_code_Div1" class="OH_CodeSnippetContainerCode" style="display: block"><pre xml:space="preserve">[<span class="identifier">SerializableAttribute</span>]
<span class="keyword">public</span> <span class="keyword">sealed</span> <span class="keyword">class</span> <span class="identifier">Level</span> : <span class="identifier">IComparable</span></pre></div><div id="ID0EDCA_code_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre xml:space="preserve">&lt;<span class="identifier">SerializableAttribute</span>&gt;
<span class="keyword">Public</span> <span class="keyword">NotInheritable</span> <span class="keyword">Class</span> <span class="identifier">Level</span>
	<span class="keyword">Implements</span> <span class="identifier">IComparable</span></pre></div><div id="ID0EDCA_code_Div3" class="OH_CodeSnippetContainerCode" style="display: none"><pre xml:space="preserve">[<span class="identifier">SerializableAttribute</span>]
<span class="keyword">public</span> <span class="keyword">ref class</span> <span class="identifier">Level</span> <span class="keyword">sealed</span> : <span class="identifier">IComparable</span></pre></div><div id="ID0EDCA_code_Div4" class="OH_CodeSnippetContainerCode" style="display: none"><pre xml:space="preserve">[&lt;<span class="identifier">SealedAttribute</span>&gt;]
[&lt;<span class="identifier">SerializableAttribute</span>&gt;]
<span class="keyword">type</span> <span class="identifier">Level</span> =  
    <span class="keyword">class</span>
        <span class="keyword">interface</span> <span class="identifier">IComparable</span>
    <span class="keyword">end</span></pre></div></div></div><script type="text/javascript">AddLanguageTabSet("ID0EDCA");</script><p>The <span class="selflink">Level</span> type exposes the following members.</p><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Constructors</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
								 
							</th><th>Name</th><th>Description</th></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Core_Level__ctor.htm">Level(Int32, String)</a></td><td><div class="summary">
            Constructor
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Core_Level__ctor_1.htm">Level(Int32, String, String)</a></td><td><div class="summary">
            Constructor
            </div></td></tr></table><a href="#mainBody">Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Properties</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
								 
							</th><th>Name</th><th>Description</th></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Core_Level_DisplayName.htm">DisplayName</a></td><td><div class="summary">
            Gets the display name of this level.
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Core_Level_Name.htm">Name</a></td><td><div class="summary">
            Gets the name of this level.
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubproperty.gif" alt="Public property" title="Public property" /></td><td><a href="P_log4net_Core_Level_Value.htm">Value</a></td><td><div class="summary">
            Gets the value of this level.
            </div></td></tr></table><a href="#mainBody">Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Methods</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
								 
							</th><th>Name</th><th>Description</th></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="M_log4net_Core_Level_Compare.htm">Compare</a></td><td><div class="summary">
            Compares two specified <span class="selflink">Level</span> instances.
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Core_Level_CompareTo.htm">CompareTo</a></td><td><div class="summary">
            Compares this instance to a specified object and returns an 
            indication of their relative values.
            </div></td></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Core_Level_Equals.htm">Equals</a></td><td><div class="summary">
            Compares levels.
            </div> (Overrides <a href="http://msdn2.microsoft.com/en-us/library/bsc2ak47" target="_blank">Object<span id="LSTBCDE645E_2"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTBCDE645E_2?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>Equals(Object)</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Core_Level_GetHashCode.htm">GetHashCode</a></td><td><div class="summary">
            Returns a hash code
            </div> (Overrides <a href="http://msdn2.microsoft.com/en-us/library/zdee4b3y" target="_blank">Object<span id="LSTBCDE645E_3"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTBCDE645E_3?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>GetHashCode<span id="LSTBCDE645E_4"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTBCDE645E_4?cs=()|vb=|cpp=()|nu=()|fs=()");</script></a>.)</td></tr><tr data="public;inherited;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="http://msdn2.microsoft.com/en-us/library/dfwy45w9" target="_blank">GetType</a></td><td><div class="summary">
                    Gets the <a href="http://msdn2.microsoft.com/en-us/library/42892f65" target="_blank">Type</a> of the current instance.
                </div> (Inherited from <a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">Object</a>.)</td></tr><tr data="public;declared;notNetfw;"><td><img src="../icons/pubmethod.gif" alt="Public method" title="Public method" /></td><td><a href="M_log4net_Core_Level_ToString.htm">ToString</a></td><td><div class="summary">
            Returns the <a href="http://msdn2.microsoft.com/en-us/library/s1wwdcbf" target="_blank">String</a> representation of the current 
            <span class="selflink">Level</span>.
            </div> (Overrides <a href="http://msdn2.microsoft.com/en-us/library/7bxwbwt2" target="_blank">Object<span id="LSTBCDE645E_5"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTBCDE645E_5?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>ToString<span id="LSTBCDE645E_6"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTBCDE645E_6?cs=()|vb=|cpp=()|nu=()|fs=()");</script></a>.)</td></tr></table><a href="#mainBody">Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Operators</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
								 
							</th><th>Name</th><th>Description</th></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/puboperator.gif" alt="Public operator" title="Public operator" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="M_log4net_Core_Level_op_Equality.htm">Equality</a></td><td><div class="summary">
            Returns a value indicating whether two specified <span class="selflink">Level</span> 
            objects have the same value.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/puboperator.gif" alt="Public operator" title="Public operator" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="M_log4net_Core_Level_op_GreaterThan.htm">GreaterThan</a></td><td><div class="summary">
            Returns a value indicating whether a specified <span class="selflink">Level</span> 
            is greater than another specified <span class="selflink">Level</span>.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/puboperator.gif" alt="Public operator" title="Public operator" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="M_log4net_Core_Level_op_GreaterThanOrEqual.htm">GreaterThanOrEqual</a></td><td><div class="summary">
            Returns a value indicating whether a specified <span class="selflink">Level</span> 
            is greater than or equal to another specified <span class="selflink">Level</span>.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/puboperator.gif" alt="Public operator" title="Public operator" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="M_log4net_Core_Level_op_Inequality.htm">Inequality</a></td><td><div class="summary">
            Returns a value indicating whether two specified <span class="selflink">Level</span> 
            objects have different values.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/puboperator.gif" alt="Public operator" title="Public operator" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="M_log4net_Core_Level_op_LessThan.htm">LessThan</a></td><td><div class="summary">
            Returns a value indicating whether a specified <span class="selflink">Level</span> 
            is less than another specified <span class="selflink">Level</span>.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/puboperator.gif" alt="Public operator" title="Public operator" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="M_log4net_Core_Level_op_LessThanOrEqual.htm">LessThanOrEqual</a></td><td><div class="summary">
            Returns a value indicating whether a specified <span class="selflink">Level</span> 
            is less than or equal to another specified <span class="selflink">Level</span>.
            </div></td></tr></table><a href="#mainBody">Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Fields</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><table id="memberList" class="members"><tr><th class="ps_iconColumn">
								 
							</th><th>Name</th><th>Description</th></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Alert.htm">Alert</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Alert.htm">Alert</a> level designates very severe error events. 
            Take immediate action, alerts.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_All.htm">All</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_All.htm">All</a> level designates the lowest level possible.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Critical.htm">Critical</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Critical.htm">Critical</a> level designates very severe error events. 
            Critical condition, critical.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Debug.htm">Debug</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Debug.htm">Debug</a> level designates fine-grained informational 
            events that are most useful to debug an application.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Emergency.htm">Emergency</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Emergency.htm">Emergency</a> level designates very severe error events. 
            System unusable, emergencies.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Error.htm">Error</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Error.htm">Error</a> level designates error events that might 
            still allow the application to continue running.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Fatal.htm">Fatal</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Fatal.htm">Fatal</a> level designates very severe error events 
            that will presumably lead the application to abort.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Fine.htm">Fine</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Fine.htm">Fine</a> level designates fine-grained informational 
            events that are most useful to debug an application.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Finer.htm">Finer</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Finer.htm">Finer</a> level designates fine-grained informational 
            events that are most useful to debug an application.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Finest.htm">Finest</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Finest.htm">Finest</a> level designates fine-grained informational 
            events that are most useful to debug an application.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Info.htm">Info</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Info.htm">Info</a> level designates informational messages that 
            highlight the progress of the application at coarse-grained level.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Log4Net_Debug.htm">Log4Net_Debug</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Emergency.htm">Emergency</a> level designates very severe error events. 
            System unusable, emergencies.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Notice.htm">Notice</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Notice.htm">Notice</a> level designates informational messages 
            that highlight the progress of the application at the highest level.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Off.htm">Off</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Off.htm">Off</a> level designates a higher level than all the rest.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Severe.htm">Severe</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Severe.htm">Severe</a> level designates very severe error events.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Trace.htm">Trace</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Trace.htm">Trace</a> level designates fine-grained informational 
            events that are most useful to debug an application.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Verbose.htm">Verbose</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Verbose.htm">Verbose</a> level designates fine-grained informational 
            events that are most useful to debug an application.
            </div></td></tr><tr data="public;static;declared;notNetfw;"><td><img src="../icons/pubfield.gif" alt="Public field" title="Public field" /><img src="../icons/static.gif" alt="Static member" title="Static member" /></td><td><a href="F_log4net_Core_Level_Warn.htm">Warn</a></td><td><div class="summary">
            The <a href="F_log4net_Core_Level_Warn.htm">Warn</a> level designates potentially harmful 
            situations.
            </div></td></tr></table><a href="#mainBody">Top</a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Remarks</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><p>
            Each <a href="T_log4net_Core_LoggingEvent.htm">LoggingEvent</a> has an associated <span class="selflink">Level</span>.
            </p><p>
            Levels have a numeric <a href="P_log4net_Core_Level_Value.htm">Value</a> that defines the relative 
            ordering between levels. Two Levels with the same <a href="P_log4net_Core_Level_Value.htm">Value</a> 
            are deemed to be equivalent.
            </p><p>
            The levels that are recognized by log4net are set for each <a href="T_log4net_Repository_ILoggerRepository.htm">ILoggerRepository</a>
            and each repository can have different levels defined. The levels are stored
            in the <a href="P_log4net_Repository_ILoggerRepository_LevelMap.htm">LevelMap</a> on the repository. Levels are
            looked up by name from the <a href="P_log4net_Repository_ILoggerRepository_LevelMap.htm">LevelMap</a>.
            </p><p>
            When logging at level INFO the actual level used is not <a href="F_log4net_Core_Level_Info.htm">Info</a> but
            the value of <span class="code">LoggerRepository.LevelMap["INFO"]</span>. The default value for this is
            <a href="F_log4net_Core_Level_Info.htm">Info</a>, but this can be changed by reconfiguring the level map.
            </p><p>
            Each level has a <a href="P_log4net_Core_Level_DisplayName.htm">DisplayName</a> in addition to its <a href="P_log4net_Core_Level_Name.htm">Name</a>. The 
            <a href="P_log4net_Core_Level_DisplayName.htm">DisplayName</a> is the string that is written into the output log. By default
            the display name is the same as the level name, but this can be used to alias levels
            or to localize the log output.
            </p><p>
            Some of the predefined levels recognized by the system are:
            </p><ul><li><a href="F_log4net_Core_Level_Off.htm">Off</a>.</li><li><a href="F_log4net_Core_Level_Fatal.htm">Fatal</a>.</li><li><a href="F_log4net_Core_Level_Error.htm">Error</a>.</li><li><a href="F_log4net_Core_Level_Warn.htm">Warn</a>.</li><li><a href="F_log4net_Core_Level_Info.htm">Info</a>.</li><li><a href="F_log4net_Core_Level_Debug.htm">Debug</a>.</li><li><a href="F_log4net_Core_Level_All.htm">All</a>.</li></ul><div class="OH_CollapsibleAreaRegion" id="seeAlsoSection"><div class="OH_regiontitle">See Also</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><h4 class="subHeading">Reference</h4><div class="seeAlsoStyle"><a href="N_log4net_Core.htm">log4net.Core Namespace</a></div></div></div></div></div><div id="OH_footer" class="OH_footer">Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.<p><a href="http://logging.apache.org/log4net/" target="_blank">Copyright 2004-2016 The Apache Software Foundation</a></p><div class="OH_feedbacklink">Send comments on this topic to
        <a id="HT_MailLink" href="mailto:http%3A%2F%2Flogging.apache.org%2Flog4net%2Fmail-lists.html?Subject=Apache log4net™ SDK Documentation">http://logging.apache.org/log4net/mail-lists.html</a></div><script type="text/javascript">
        var HT_mailLink = document.getElementById("HT_MailLink");
        var HT_mailLinkText = HT_mailLink.innerHTML;
        HT_mailLink.href += ": " + document.title + "\u0026body=" + encodeURIComponent("Your feedback is used to improve the documentation and the product. Your e-mail address will not be used for any other purpose and is disposed of after the issue you report is resolved. While working to resolve the issue that you report, you may be contacted via e-mail to get further details or clarification on the feedback you sent. After the issue you report has been addressed, you may receive an e-mail to let you know that your feedback has been addressed.");
        HT_mailLink.innerHTML = HT_mailLinkText;
        </script> </div></body></html>