<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>RollingFileAppender Methods</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">RollingFileAppender�Methods</h1>
      </div>
    </div>
    <div id="nstext">
      <p>The methods of the <b>RollingFileAppender</b> class are listed below. For a complete list of <b>RollingFileAppender</b> class members, see the <a href="log4net.Appender.RollingFileAppenderMembers.html">RollingFileAppender Members</a> topic.</p>
      <h4 class="dtH4">Public Instance Methods</h4>
      <div class="tablediv">
        <table class="dtTABLE" cellspacing="0">
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.ActivateOptions.html">ActivateOptions</a></td><td width="50%"> Initialize the appender based on the options set </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.AddFilter.html">AddFilter</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%"> Adds a filter to the end of the filter chain. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.ClearFilters.html">ClearFilters</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%"> Clears the filter list for this appender. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.Close.html">Close</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%"> Closes the appender and release resources. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.DoAppend_overloads.html">DoAppend</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%">Overloaded.  Performs threshold checks and invokes filters before delegating actual logging to the subclasses specific <b>Append</b> method. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassEqualsTopic.htm">Equals</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassGetHashCodeTopic.htm">GetHashCode</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassGetTypeTopic.htm">GetType</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassToStringTopic.htm">ToString</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr></table>
      </div>
      <h4 class="dtH4">Protected Instance Methods</h4>
      <div class="tablediv">
        <table class="dtTABLE" cellspacing="0">
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.AdjustFileBeforeAppend.html">AdjustFileBeforeAppend</a></td><td width="50%"> Performs any required rolling before outputting the next event </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.Append_overloads.html">Append</a></td><td width="50%">Overloaded.  Write out a logging event. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.CloseFile.html">CloseFile</a> (inherited from <b>FileAppender</b>)</td><td width="50%"> Closes the previously opened file. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.CloseWriter.html">CloseWriter</a> (inherited from <b>FileAppender</b>)</td><td width="50%"> Closes the underlying <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemIOTextWriterClassTopic.htm">TextWriter</a>. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.DeleteFile.html">DeleteFile</a></td><td width="50%"> Deletes the specified file if it exists. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.ExistingInit.html">ExistingInit</a></td><td width="50%"> Initializes based on existing conditions at time of <a href="log4net.Appender.RollingFileAppender.ActivateOptions.html">ActivateOptions</a>. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.FileExists.html">FileExists</a></td><td width="50%"> Test if a file exists at a specified path </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.FilterEvent.html">FilterEvent</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%"> Test if the logging event should we output by this appender </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.Finalize.html">Finalize</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%"> Finalizes this appender by calling the implementation's <a href="log4net.Appender.AppenderSkeleton.Close.html">Close</a> method. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.GetNextOutputFileName.html">GetNextOutputFileName</a></td><td width="50%"> Get the current output file name </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.IsAsSevereAsThreshold.html">IsAsSevereAsThreshold</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%"> Checks if the message level is below this appender's threshold. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassMemberwiseCloneTopic.htm">MemberwiseClone</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.NextCheckDate.html">NextCheckDate</a></td><td width="50%"> Get the start time of the next window for the current rollpoint </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.TextWriterAppender.OnClose.html">OnClose</a> (inherited from <b>TextWriterAppender</b>)</td><td width="50%"> Close this appender instance. The underlying stream or writer is also closed. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.OpenFile.html">OpenFile</a></td><td width="50%"> Creates and opens the file for logging. If <a href="log4net.Appender.RollingFileAppender.StaticLogFileName.html">StaticLogFileName</a> is false then the fully qualified name is determined and used. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.TextWriterAppender.PreAppendCheck.html">PreAppendCheck</a> (inherited from <b>TextWriterAppender</b>)</td><td width="50%"> This method determines if there is a sense in attempting to append. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.PrepareWriter.html">PrepareWriter</a> (inherited from <b>FileAppender</b>)</td><td width="50%"> Called to initialize the file writer </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.AppenderSkeleton.RenderLoggingEvent_overloads.html">RenderLoggingEvent</a> (inherited from <b>AppenderSkeleton</b>)</td><td width="50%">Overloaded.  Renders the <a href="log4net.Core.LoggingEvent.html">LoggingEvent</a> to a string. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.Reset.html">Reset</a> (inherited from <b>FileAppender</b>)</td><td width="50%"> Closes any previously opened file and calls the parent's <a href="log4net.Appender.TextWriterAppender.Reset.html">Reset</a>. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.RollFile.html">RollFile</a></td><td width="50%"> Renames file <i>fromFile</i> to file <i>toFile</i>. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.RollOverRenameFiles.html">RollOverRenameFiles</a></td><td width="50%"> Implements file roll. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.RollOverSize.html">RollOverSize</a></td><td width="50%"> Implements file roll base on file size. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.RollOverTime.html">RollOverTime</a></td><td width="50%"> Rollover the file(s) to date/time tagged file(s). </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.SafeOpenFile.html">SafeOpenFile</a> (inherited from <b>FileAppender</b>)</td><td width="50%"> Sets and <i>opens</i> the file where the log output will go. The specified file must be writable. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.RollingFileAppender.SetQWForFiles_overload_1.html">SetQWForFiles</a></td><td width="50%">Overloaded.  Sets the quiet writer being used. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.SetQWForFiles_overload_1.html">SetQWForFiles</a> (inherited from <b>FileAppender</b>)</td><td width="50%">Overloaded.  Sets the quiet writer used for file output </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.WriteFooter.html">WriteFooter</a> (inherited from <b>FileAppender</b>)</td><td width="50%"> Writes a footer as produced by the embedded layout's <a href="log4net.Layout.ILayout.Footer.html">Footer</a> property. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.TextWriterAppender.WriteFooterAndCloseWriter.html">WriteFooterAndCloseWriter</a> (inherited from <b>TextWriterAppender</b>)</td><td width="50%"> Writes the footer and closes the underlying <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemIOTextWriterClassTopic.htm">TextWriter</a>. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="protmethod.gif"></img><a href="log4net.Appender.FileAppender.WriteHeader.html">WriteHeader</a> (inherited from <b>FileAppender</b>)</td><td width="50%"> Writes a header produced by the embedded layout's <a href="log4net.Layout.ILayout.Header.html">Header</a> property. </td></tr></table>
      </div>
      <h4 class="dtH4">See Also</h4>
      <p>
        <a href="log4net.Appender.RollingFileAppender.html">RollingFileAppender Class</a> | <a href="log4net.Appender.html">log4net.Appender Namespace</a></p>
      <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;">
        <param name="Keyword" value="RollingFileAppender class, methods">
        </param>
      </object>
      <hr />
      <div id="footer"><a href='http://logging.apache.org/log4net/'>Copyright 2004-2013 The Apache Software Foundation.</a><br></br>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</div>
    </div>
  </body>
</html>
