RollingFileAppender Class Reference

`RollingFileAppender` extends log4cxx::FileAppender to backup the log files depending on RollingPolicy and TriggeringPolicy. More...

Inherits RollingFileAppenderSkeleton.

## Public Member Functions

| RollingFileAppender ()
Public Member Functions inherited from RollingFileAppenderSkeleton
| RollingFileAppenderSkeleton ()
| The default constructor simply calls its parents constructor. More...
void | activateOptions (log4cxx::helpers::Pool &)
bool | rollover (log4cxx::helpers::Pool &p)
| Implements the usual roll over behaviour. More...
void | close ()
| Close appender. More...
size_t | getFileLength () const
| Get byte length of current active log file. More...
void | incrementFileLength (size_t increment)
| Increments estimated byte length of current active log file. More...
Public Member Functions inherited from FileAppender
| FileAppender ()
| The default constructor does not do anything. More...
| FileAppender (const LayoutPtr &layout, const LogString &filename, bool append, bool bufferedIO, int bufferSize)
| Instantiate a `FileAppender` and open the file designated by `filename`. More...
| FileAppender (const LayoutPtr &layout, const LogString &filename, bool append)
| Instantiate a FileAppender and open the file designated by `filename`. More...
| FileAppender (const LayoutPtr &layout, const LogString &filename)
| Instantiate a FileAppender and open the file designated by `filename`. More...
| ~FileAppender ()
virtual void | setFile (const LogString &file)
| The File property takes a string value which should be the name of the file to append to. More...
virtual void | setFile (const LogString &file, bool append, bool bufferedIO, size_t bufferSize, log4cxx::helpers::Pool &p)
| Sets and opens the file where the log output will go. More...
bool | getAppend () const
| Returns the value of the Append option. More...
LogString | getFile () const
| Returns the value of the File option. More...
void | setOption (const LogString &option, const LogString &value)
| Set `option` to `value`. More...
bool | getBufferedIO () const
| Get the value of the BufferedIO option. More...
int | getBufferSize () const
| Get the size of the IO buffer. More...
void | setAppend (bool fileAppend1)
| The Append option takes a boolean value. More...
void | setBufferedIO (bool bufferedIO)
| The BufferedIO option takes a boolean value. More...
void | setBufferSize (int bufferSize1)
| Set the size of the IO buffer. More...
Public Member Functions inherited from WriterAppender
| WriterAppender ()
| This default constructor does nothing. More...
| ~WriterAppender ()
void | setImmediateFlush (bool value)
| If the ImmediateFlush option is set to `true`, the appender will flush at the end of each write. More...
bool | getImmediateFlush () const
| Returns value of the ImmediateFlush option. More...
virtual void | append (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &p)
| This method is called by the AppenderSkeleton::doAppend method. More...
LogString | getEncoding () const
void | setEncoding (const LogString &value)
void | setOption (const LogString &option, const LogString &value)
| Set `option` to `value`. More...
void | setWriter (const log4cxx::helpers::WriterPtr &writer)
virtual bool | requiresLayout () const
| Configurators call this method to determine if the appender requires a layout. More...
Public Member Functions inherited from AppenderSkeleton
| AppenderSkeleton ()
| AppenderSkeleton (const LayoutPtr &layout)
void | addRef () const
void | releaseRef () const
void | finalize ()
| Finalize this appender by calling the derived class' `close` method. More...
void | addFilter (const spi::FilterPtr &newFilter)
| Add a filter to end of the filter list. More...
void | clearFilters ()
| Clear the filters chain. More...
const spi::ErrorHandlerPtr & | getErrorHandler () const
| Return the currently set spi::ErrorHandler for this Appender. More...
spi::FilterPtr | getFilter () const
| Returns the head Filter. More...
const spi::FilterPtr & | getFirstFilter () const
| Return the first filter in the filter chain for this Appender. More...
LayoutPtr | getLayout () const
| Returns the layout of this appender. More...
LogString | getName () const
| Returns the name of this Appender. More...
const LevelPtr & | getThreshold ()
| Returns this appenders threshold level. More...
bool | isAsSevereAsThreshold (const LevelPtr &level) const
| Check whether the message level is below the appender's threshold. More...
void | doAppend (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &pool)
| This method performs threshold checks and invokes filters before delegating actual logging to the subclasses specific AppenderSkeleton::append method. More...
void | setErrorHandler (const spi::ErrorHandlerPtr &eh)
| Set the ErrorHandler for this Appender. More...
void | setLayout (const LayoutPtr &layout1)
| Set the layout for this appender. More...
void | setName (const LogString &name1)
| Set the name of this Appender. More...
void | setThreshold (const LevelPtr &threshold)
| Set the threshold level. More...
Public Member Functions inherited from Appender
virtual | ~Appender ()
Public Member Functions inherited from OptionHandler
virtual | ~OptionHandler ()
Public Member Functions inherited from Object
virtual const helpers::Class & | getClass () const
virtual | ~Object ()
virtual bool | instanceof (const Class &clazz) const =0
virtual const void * | cast (const Class &clazz) const =0
Public Member Functions inherited from ObjectImpl
| ObjectImpl ()
virtual | ~ObjectImpl ()
void | addRef () const
void | releaseRef () const

## Additional Inherited Members

Static Public Member Functions inherited from FileAppender
static LogString | stripDuplicateBackslashes (const LogString &name)
| Replaces double backslashes with single backslashes for compatibility with paths from earlier XML configurations files. More...
Protected Member Functions inherited from RollingFileAppenderSkeleton
virtual void | subAppend (const spi::LoggingEventPtr &event, log4cxx::helpers::Pool &p)
| Actual writing occurs here. More...
RollingPolicyPtr | getRollingPolicy () const
TriggeringPolicyPtr | getTriggeringPolicy () const
void | setRollingPolicy (const RollingPolicyPtr &policy)
| Sets the rolling policy. More...
void | setTriggeringPolicy (const TriggeringPolicyPtr &policy)
log4cxx::helpers::WriterPtr | createWriter (log4cxx::helpers::OutputStreamPtr &os)
| Returns an OutputStreamWriter when passed an OutputStream. More...
Protected Attributes inherited from FileAppender
bool | fileAppend

    Append to or truncate the file? The default value for this

variable is `true`, meaning that by default a `FileAppender` will append to an existing file and not truncate it. More...

LogString | fileName
| The name of the log file. More...
bool | bufferedIO
| Do we do bufferedIO? More...
int | bufferSize
| How big should the IO buffer be? Default is 8K. More...

## Detailed Description

`RollingFileAppender` extends log4cxx::FileAppender to backup the log files depending on RollingPolicy and TriggeringPolicy.

To be of any use, a `RollingFileAppender` instance must have both a `RollingPolicy` and a `TriggeringPolicy` set up. However, if its `RollingPolicy` also implements the `TriggeringPolicy` interface, then only the former needs to be set up. For example, TimeBasedRollingPolicy acts both as a `RollingPolicy` and a `TriggeringPolicy`.

`RollingFileAppender` can be configured programattically or using log4cxx::xml::DOMConfigurator. Here is a sample configration file:

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE log4j:configuration>

    <log4j:configuration debug="true">

      <appender name="ROLL" class="org.apache.log4j.rolling.RollingFileAppender">
        <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
          <param name="FileNamePattern" value="/wombat/foo.%d{yyyy-MM}.gz"/>
        </rollingPolicy>

        <layout class="org.apache.log4j.PatternLayout">
          <param name="ConversionPattern" value="%c{1} - %m%n"/>
        </layout>
      </appender>

      <root">
        &lt;appender-ref ref="ROLL"/>
      </root>

    </log4j:configuration>

This configuration file specifies a monthly rollover schedule including automatic compression of the archived files. See TimeBasedRollingPolicy for more details.

## Constructor & Destructor Documentation

RollingFileAppender | ( |  | ) |

The documentation for this class was generated from the following file:

- rolling/rollingfileappender.h