﻿<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>FileAppender Class</title><meta name="Language" content="en-us" /><meta name="System.Keywords" content="FileAppender class" /><meta name="System.Keywords" content="log4net.Appender.FileAppender class" /><meta name="System.Keywords" content="FileAppender class, about FileAppender class" /><meta name="Microsoft.Help.F1" content="log4net.Appender.FileAppender" /><meta name="Microsoft.Help.Id" content="T:log4net.Appender.FileAppender" /><meta name="Description" content="Appends logging events to a file." /><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_FileAppender" /><meta name="guid" content="T_log4net_Appender_FileAppender" /><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">FileAppender 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">
            Appends logging events to a file.
            </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="ID0EBNNAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBNNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>Object</a><br />  <a href="T_log4net_Appender_AppenderSkeleton.htm" target="">log4net.Appender<span id="ID0EBKNAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBKNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>AppenderSkeleton</a><br />    <a href="T_log4net_Appender_TextWriterAppender.htm" target="">log4net.Appender<span id="ID0EBHNAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBHNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>TextWriterAppender</a><br />      <span class="selflink">log4net.Appender<span id="ID0EBENAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBENAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>FileAppender</span><br />        <a href="T_log4net_Appender_RollingFileAppender.htm" target="">log4net.Appender<span id="ID0EBBNAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBBNAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>RollingFileAppender</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.15.0 (1.2.15.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">class</span> <span class="identifier">FileAppender</span> : <span class="identifier">TextWriterAppender</span></pre></div><div id="ID0ECADAAAAA_code_Plain_Div1" class="OH_CodeSnippetContainerCode" style="display: none"><pre>public class FileAppender : TextWriterAppender</pre></div><div id="ID0ECADAAAAA_code_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre><span class="keyword">Public</span> <span class="keyword">Class</span> <span class="identifier">FileAppender</span> 
	<span class="keyword">Inherits</span> <span class="identifier">TextWriterAppender</span></pre></div><div id="ID0ECADAAAAA_code_Plain_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre>Public Class FileAppender 
	Inherits TextWriterAppender</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">FileAppender</span> : <span class="keyword">public</span> <span class="identifier">TextWriterAppender</span></pre></div><div id="ID0ECADAAAAA_code_Plain_Div3" class="OH_CodeSnippetContainerCode" style="display: none"><pre>public ref class FileAppender : public TextWriterAppender</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>
            Logging events are sent to the file specified by
            the <a href="P_log4net_Appender_FileAppender_File.htm" target="">File</a> property.
            </p><p>
            The file can be opened in either append or overwrite mode 
            by specifying the <a href="P_log4net_Appender_FileAppender_AppendToFile.htm" target="">AppendToFile</a> property.
            If the file path is relative it is taken as relative from 
            the application base directory. The file encoding can be
            specified by setting the <a href="P_log4net_Appender_FileAppender_Encoding.htm" target="">Encoding</a> property.
            </p><p>
            The layout's <a href="P_log4net_Layout_ILayout_Header.htm" target="">Header</a> and <a href="P_log4net_Layout_ILayout_Footer.htm" target="">Footer</a>
            values will be written each time the file is opened and closed
            respectively. If the <a href="P_log4net_Appender_FileAppender_AppendToFile.htm" target="">AppendToFile</a> property is <span sdata="langKeyword" value="true"><span class="keyword"><span id="ID0EAABDCAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EAABDCAAAAA?vb=True|cpp=true|cs=true|fs=true|nu=true");
				</script></span></span>
            then the file may contain multiple copies of the header and footer.
            </p><p>
            This appender will first try to open the file for writing when <a href="M_log4net_Appender_FileAppender_ActivateOptions.htm" target="">ActivateOptions<span id="ID0EABCCAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EABCCAAAAA?vb=|cpp=()|cs=()|fs=()|nu=()");
				</script></a>
            is called. This will typically be during configuration.
            If the file cannot be opened for writing the appender will attempt
            to open the file again each time a message is logged to the appender.
            If the file cannot be opened for writing when a message is logged then
            the message will be discarded by this appender.
            </p><p>
            The <span class="selflink">FileAppender</span> supports pluggable file locking models via
            the <a href="P_log4net_Appender_FileAppender_LockingModel.htm" target="">LockingModel</a> property.
            The default behavior, implemented by <a href="T_log4net_Appender_FileAppender_ExclusiveLock.htm" target="">FileAppender<span id="ID0EBFBCAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBFBCAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>ExclusiveLock</a> 
            is to obtain an exclusive write lock on the file until this appender is closed.
            The alternative models only hold a
            write lock while the appender is writing a logging event (<a href="T_log4net_Appender_FileAppender_MinimalLock.htm" target="">FileAppender<span id="ID0EBDBCAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBDBCAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>MinimalLock</a>)
            or synchronize by using a named system wide Mutex (<a href="T_log4net_Appender_FileAppender_InterProcessLock.htm" target="">FileAppender<span id="ID0EBBBCAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBBBCAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>InterProcessLock</a>).
            </p><p>
            All locking strategies have issues and you should seriously consider using a different strategy that
            avoids having multiple processes logging to the same file.
            </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_FileAppender.htm" target="">FileAppender 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+FileAppender+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>