blob: 926d528ddef161418a0350dd7f7ad9b635874757 [file] [log] [blame]
<html xmlns:MSHelp="http://msdn.microsoft.com/mshelp" xmlns:mshelp="http://msdn.microsoft.com/mshelp"><head><link rel="SHORTCUT ICON" href="./../icons/favicon.ico" /><style type="text/css">.OH_CodeSnippetContainerTabLeftActive, .OH_CodeSnippetContainerTabLeft,.OH_CodeSnippetContainerTabLeftDisabled { backgroundImageName: tabLeftBG.gif; }.OH_CodeSnippetContainerTabRightActive, .OH_CodeSnippetContainerTabRight,.OH_CodeSnippetContainerTabRightDisabled { backgroundImageName: tabRightBG.gif; }.OH_footer { backgroundImageName: footer_slice.gif; background-position: top; background-repeat: repeat-x; }</style><link rel="stylesheet" type="text/css" href="./../styles/branding.css" /><link rel="stylesheet" type="text/css" href="./../styles/branding-en-US.css" /><style type="text/css">
body
{
border-left:5px solid #e6e6e6;
overflow-x:scroll;
overflow-y:scroll;
}
</style><script src="./../scripts/branding.js" type="text/javascript"><!----></script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>BufferingAppenderSkeleton Class</title><meta name="Language" content="en-us" /><meta name="System.Keywords" content="BufferingAppenderSkeleton class" /><meta name="System.Keywords" content="log4net.Appender.BufferingAppenderSkeleton class" /><meta name="System.Keywords" content="BufferingAppenderSkeleton class, about BufferingAppenderSkeleton class" /><meta name="Microsoft.Help.F1" content="log4net.Appender.BufferingAppenderSkeleton" /><meta name="Microsoft.Help.Id" content="T:log4net.Appender.BufferingAppenderSkeleton" /><meta name="Description" content="Abstract base class implementation of that buffers events in a fixed size buffer." /><meta name="Microsoft.Help.ContentType" content="Reference" /><meta name="BrandingAware" content="'true'" /><meta name="container" content="log4net.Appender" /><meta name="file" content="T_log4net_Appender_BufferingAppenderSkeleton" /><meta name="guid" content="T_log4net_Appender_BufferingAppenderSkeleton" /><link type="text/css" rel="stylesheet" href="ms-help://Hx/HxRuntime/HxLink.css" /><meta name="SelfBranded" content="true" /></head><body onload="onLoad()" class="primary-mtps-offline-document"><div class="OH_outerDiv"><div class="OH_outerContent"><table class="TitleTable"><tr><td class="OH_tdTitleColumn">BufferingAppenderSkeleton 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">
Abstract base class implementation of <a href="T_log4net_Appender_IAppender.htm" target="">IAppender</a> that
buffers events in a fixed size buffer.
</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><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/e5kfa45b" target="_blank">System<span id="ID0EBWNAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBWNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>Object</a><br />  <a href="T_log4net_Appender_AppenderSkeleton.htm" target="">log4net.Appender<span id="ID0EBTNAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBTNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>AppenderSkeleton</a><br />    <span class="selflink">log4net.Appender<span id="ID0EBQNAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBQNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>BufferingAppenderSkeleton</span><br />      <a href="T_log4net_Appender_AdoNetAppender.htm" target="">log4net.Appender<span id="ID0EBNNAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBNNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>AdoNetAppender</a><br />      <a href="T_log4net_Appender_BufferingForwardingAppender.htm" target="">log4net.Appender<span id="ID0EBKNAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBKNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>BufferingForwardingAppender</a><br />      <a href="T_log4net_Appender_RemotingAppender.htm" target="">log4net.Appender<span id="ID0EBHNAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBHNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>RemotingAppender</a><br />      <a href="T_log4net_Appender_SmtpAppender.htm" target="">log4net.Appender<span id="ID0EBENAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBENAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>SmtpAppender</a><br />      <a href="T_log4net_Appender_SmtpPickupDirAppender.htm" target="">log4net.Appender<span id="ID0EBBNAAAAA"> </span><script type="text/javascript">
addToLanSpecTextIdSet("ID0EBBNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
</script>SmtpPickupDirAppender</a><br /><p></p><b>Namespace:</b> <a href="N_log4net_Appender.htm" target="">log4net.Appender</a><br /><b>Assembly:</b> <span sdata="assembly">log4net</span> (in log4net.dll) Version: 1.2.14.0 (1.2.14.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 id="snippetGroup_Syntax" class="code"><div id="ID0ECADAAAAA" class="OH_CodeSnippetContainer"><div class="OH_CodeSnippetContainerTabs" id="ID0ECADAAAAA_tabs"><div class="OH_CodeSnippetContainerTabLeftActive" id="ID0ECADAAAAA_tabimgleft"></div><div id="ID0ECADAAAAA_tab1" class="OH_CodeSnippetContainerTabActive" EnableCopyCode="true"><a href="#" onclick="javascript:ChangeTab('ID0ECADAAAAA','C#','1','4');return false;">C#</a></div><div id="ID0ECADAAAAA_tab2" class="OH_CodeSnippetContainerTab" EnableCopyCode="true"><a href="#" onclick="javascript:ChangeTab('ID0ECADAAAAA','Visual Basic','2','4');return false;">VB</a></div><div id="ID0ECADAAAAA_tab3" class="OH_CodeSnippetContainerTab" EnableCopyCode="true"><a href="#" onclick="javascript:ChangeTab('ID0ECADAAAAA','Visual C++','3','4');return false;">C++</a></div><div id="ID0ECADAAAAA_tab4" class="OH_CodeSnippetContainerTabDisabledNotFirst" EnableCopyCode="true" disabled="true"><a>F#</a></div><div class="OH_CodeSnippetContainerTabRight" id="ID0ECADAAAAA_tabimgright"></div></div><div id="ID0ECADAAAAA_codecollection" class="OH_CodeSnippetContainerCodeCollection"><div class="OH_CodeSnippetToolBar"><div class="OH_CodeSnippetToolBarText"><a id="ID0ECADAAAAA_ViewColorized" href="#" onclick="javascript:ExchangeTitleContent('ID0ECADAAAAA','4')" title="View Colorized" style="display: none">View Colorized</a><a id="ID0ECADAAAAA_copycode" href="#" onclick="javascript:CopyToClipboard('ID0ECADAAAAA','4')" title="Copy to Clipboard">Copy to Clipboard</a><a id="ID0ECADAAAAA_PrintText" class="OH_PrintText" href="#" onclick="javascript:Print('ID0ECADAAAAA','4')" title="Print">Print</a></div></div><div id="ID0ECADAAAAA_code_Div1" class="OH_CodeSnippetContainerCode" style="display: block"><pre><span class="keyword">public</span> <span class="keyword">abstract</span> <span class="keyword">class</span> <span class="identifier">BufferingAppenderSkeleton</span> : <span class="identifier">AppenderSkeleton</span></pre></div><div id="ID0ECADAAAAA_code_Plain_Div1" class="OH_CodeSnippetContainerCode" style="display: none"><pre>public abstract class BufferingAppenderSkeleton : AppenderSkeleton</pre></div><div id="ID0ECADAAAAA_code_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre><span class="keyword">Public</span> <span class="keyword">MustInherit</span> <span class="keyword">Class</span> <span class="identifier">BufferingAppenderSkeleton</span> 
<span class="keyword">Inherits</span> <span class="identifier">AppenderSkeleton</span></pre></div><div id="ID0ECADAAAAA_code_Plain_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre>Public MustInherit Class BufferingAppenderSkeleton 
Inherits AppenderSkeleton</pre></div><div id="ID0ECADAAAAA_code_Div3" class="OH_CodeSnippetContainerCode" style="display: none"><pre><span class="keyword">public</span> <span class="keyword">ref class</span> <span class="identifier">BufferingAppenderSkeleton</span> <span class="keyword">abstract</span> : <span class="keyword">public</span> <span class="identifier">AppenderSkeleton</span></pre></div><div id="ID0ECADAAAAA_code_Plain_Div3" class="OH_CodeSnippetContainerCode" style="display: none"><pre>public ref class BufferingAppenderSkeleton abstract : public AppenderSkeleton</pre></div><div id="ID0ECADAAAAA_code_Div4" class="OH_CodeSnippetContainerCode" style="display: none"><pre /></div><div id="ID0ECADAAAAA_code_Plain_Div4" class="OH_CodeSnippetContainerCode" style="display: none"><pre /></div></div></div><script>addSpecificTextLanguageTagSet('ID0ECADAAAAA');</script></div><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>
This base class should be used by appenders that need to buffer a
number of events before logging them. For example the <a href="T_log4net_Appender_AdoNetAppender.htm" target="">AdoNetAppender</a>
buffers events and then submits the entire contents of the buffer to
the underlying database in one go.
</p><p>
Subclasses should override the <span class="nolink">[M:SendBuffer(LoggingEvent[])]</span>
method to deliver the buffered events.
</p><p>The BufferingAppenderSkeleton maintains a fixed size cyclic
buffer of events. The size of the buffer is set using
the <a href="P_log4net_Appender_BufferingAppenderSkeleton_BufferSize.htm" target="">BufferSize</a> property.
</p><p>A <a href="T_log4net_Core_ITriggeringEventEvaluator.htm" target="">ITriggeringEventEvaluator</a> is used to inspect
each event as it arrives in the appender. If the <a href="P_log4net_Appender_BufferingAppenderSkeleton_Evaluator.htm" target="">Evaluator</a>
triggers, then the current buffer is sent immediately
(see <span class="nolink">[M:SendBuffer(LoggingEvent[])]</span>). Otherwise the event
is stored in the buffer. For example, an evaluator can be used to
deliver the events immediately when an ERROR event arrives.
</p><p>
The buffering appender can be configured in a <a href="P_log4net_Appender_BufferingAppenderSkeleton_Lossy.htm" target="">Lossy</a> mode.
By default the appender is NOT lossy. When the buffer is full all
the buffered events are sent with <span class="nolink">[M:SendBuffer(LoggingEvent[])]</span>.
If the <a href="P_log4net_Appender_BufferingAppenderSkeleton_Lossy.htm" target="">Lossy</a> property is set to <span class="code">true</span> then the
buffer will not be sent when it is full, and new events arriving
in the appender will overwrite the oldest event in the buffer.
In lossy mode the buffer will only be sent when the <a href="P_log4net_Appender_BufferingAppenderSkeleton_Evaluator.htm" target="">Evaluator</a>
triggers. This can be useful behavior when you need to know about
ERROR events but not about events with a lower level, configure an
evaluator that will trigger when an ERROR event arrives, the whole
buffer will be sent which gives a history of events leading up to
the ERROR event.
</p><a name="seeAlsoSection"><!----></a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">See Also</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><div class="seeAlsoStyle"><a href="AllMembers_T_log4net_Appender_BufferingAppenderSkeleton.htm" target="">BufferingAppenderSkeleton Members</a></div><div class="seeAlsoStyle"><a href="N_log4net_Appender.htm" target="">log4net.Appender Namespace</a></div></div></div></div></div><div id="OH_footer" class="OH_footer"><p>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</p><p><a href="http://logging.apache.org/log4net/" target="_blank"><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /> 
Copyright 2004-2015 The Apache Software Foundation (http://logging.apache.org/log4net/)</a></p><div class="OH_feedbacklink"><a href="mailto:http://logging.apache.org/log4net/mail-lists.html?subject=Apache+log4net%e2%84%a2+SDK+Documentation+BufferingAppenderSkeleton+Class+100+EN-US&amp;body=Your%20feedback%20is%20used%20to%20improve%20the%20documentation%20and%20the%20product.%20Your%20e-mail%20address%20will%20not%20be%20used%20for%20any%20other%20purpose%20and%20is%20disposed%20of%20after%20the%20issue%20you%20report%20is%20resolved.%20While%20working%20to%20resolve%20the%20issue%20that%20you%20report%2c%20you%20may%20be%20contacted%20via%20e-mail%20to%20get%20further%20details%20or%20clarification%20on%20the%20feedback%20you%20sent.%20After%20the%20issue%20you%20report%20has%20been%20addressed%2c%20you%20may%20receive%20an%20e-mail%20to%20let%20you%20know%20that%20your%20feedback%20has%20been%20addressed.">Send Feedback</a> on this topic to http://logging.apache.org/log4net/mail-lists.html.</div></div></body></html>