Apache Log4cxx Version 1.1.0
|
When rolling over, FixedWindowRollingPolicy
renames files according to a fixed window algorithm as described below.
More...
#include <fixedwindowrollingpolicy.h>
Public Member Functions | |||||||||
FixedWindowRollingPolicy () | |||||||||
~FixedWindowRollingPolicy () | |||||||||
void | activateOptions (helpers::Pool &p) override | ||||||||
Activate the options that were previously set with calls to option setters. | |||||||||
void | setOption (const LogString &option, const LogString &value) override | ||||||||
Set option to value . | |||||||||
void | rollover () | ||||||||
int | getMaxIndex () const | ||||||||
int | getMinIndex () const | ||||||||
void | setMaxIndex (int newVal) | ||||||||
void | setMinIndex (int newVal) | ||||||||
RolloverDescriptionPtr | initialize (const LogString ¤tActiveFile, const bool append, helpers::Pool &pool) override | ||||||||
Initialize the policy and return any initial actions for rolling file appender.
| |||||||||
RolloverDescriptionPtr | rollover (const LogString ¤tActiveFile, const bool append, helpers::Pool &pool) override | ||||||||
Prepare for a rollover.This method is called prior to closing the active log file, performs any necessary preliminary actions and describes actions needed after close of current log file.
| |||||||||
![]() | |||||||||
RollingPolicyBase () | |||||||||
virtual | ~RollingPolicyBase () | ||||||||
void | activateOptions (helpers::Pool &p) override | ||||||||
Activate the options that were previously set with calls to option setters. | |||||||||
virtual pattern::PatternMap | getFormatSpecifiers () const =0 | ||||||||
A map from a name to the object implementing the (date or index) formatting. | |||||||||
void | setOption (const LogString &option, const LogString &value) override | ||||||||
Set option to value . | |||||||||
void | setFileNamePattern (const LogString &fnp) | ||||||||
Set file name pattern. | |||||||||
LogString | getFileNamePattern () const | ||||||||
Get file name pattern. | |||||||||
bool | getCreateIntermediateDirectories () const | ||||||||
void | setCreateIntermediateDirectories (bool createIntermediate) | ||||||||
PatternConverterList | getPatternConverterList () const | ||||||||
![]() | |||||||||
virtual | ~RollingPolicy () | ||||||||
virtual RolloverDescriptionPtr | initialize (const LogString ¤tActiveFile, const bool append, log4cxx::helpers::Pool &pool)=0 | ||||||||
Initialize the policy and return any initial actions for rolling file appender. | |||||||||
virtual RolloverDescriptionPtr | rollover (const LogString ¤tActiveFile, const bool append, log4cxx::helpers::Pool &pool)=0 | ||||||||
Prepare for a rollover. | |||||||||
![]() | |||||||||
virtual | ~OptionHandler () | ||||||||
virtual void | activateOptions (helpers::Pool &p)=0 | ||||||||
Activate the options that were previously set with calls to option setters. | |||||||||
virtual void | setOption (const LogString &option, const LogString &value)=0 | ||||||||
Set option to value . | |||||||||
![]() | |||||||||
virtual | ~Object () | ||||||||
virtual const helpers::Class & | getClass () const =0 | ||||||||
virtual bool | instanceof (const Class &clazz) const =0 | ||||||||
virtual const void * | cast (const Class &clazz) const =0 | ||||||||
Protected Member Functions | |
log4cxx::pattern::PatternMap | getFormatSpecifiers () const override |
A map from "i" and "index" to a integer conversion formatter. | |
![]() | |
RollingPolicyBase (LOG4CXX_PRIVATE_PTR(RollingPolicyBasePrivate) priv) | |
void | parseFileNamePattern () |
Parse file name pattern. | |
void | formatFileName (const helpers::ObjectPtr &obj, LogString &buf, helpers::Pool &p) const |
Format file name. | |
log4cxx::pattern::PatternConverterPtr | getIntegerPatternConverter () const |
log4cxx::pattern::PatternConverterPtr | getDatePatternConverter () const |
When rolling over, FixedWindowRollingPolicy
renames files according to a fixed window algorithm as described below.
The ActiveFileName property, which is required, represents the name of the file where current logging output will be written. The FileNamePattern option represents the file name pattern for the archived (rolled over) log files. If present, the FileNamePattern option must include an integer token, that is the string "%i" somwhere within the pattern.
Let max and min represent the values of respectively the MaxIndex and MinIndex options. Let "foo.log" be the value of the ActiveFile option and "foo.%i.log" the value of FileNamePattern. Then, when rolling over, the file foo.max.log
will be deleted, the file foo.max-1.log
will be renamed as foo.max.log
, the file foo.max-2.log
renamed as foo.max-1.log
, and so on, the file foo.min+1.log
renamed as foo.min+2.log
. Lastly, the active file foo.log
will be renamed as foo.min.log
and a new active file name foo.log
will be created.
Given that this rollover algorithm requires as many file renaming operations as the window size, large window sizes are discouraged. The current implementation will automatically reduce the window size to 12 when larger values are specified by the user.
log4cxx::rolling::FixedWindowRollingPolicy::FixedWindowRollingPolicy | ( | ) |
log4cxx::rolling::FixedWindowRollingPolicy::~FixedWindowRollingPolicy | ( | ) |
|
overridevirtual |
Activate the options that were previously set with calls to option setters.
Logs a warning if an option is not valid.
Implements log4cxx::spi::OptionHandler.
|
overrideprotectedvirtual |
A map from "i" and "index" to a integer conversion formatter.
Implements log4cxx::rolling::RollingPolicyBase.
int log4cxx::rolling::FixedWindowRollingPolicy::getMaxIndex | ( | ) | const |
int log4cxx::rolling::FixedWindowRollingPolicy::getMinIndex | ( | ) | const |
|
overridevirtual |
Initialize the policy and return any initial actions for rolling file appender.
currentActiveFile | current value of RollingFileAppender.getFile(). |
append | current value of RollingFileAppender.getAppend(). |
pool | pool for memory allocations during call. |
SecurityException | if denied access to log files. |
Implements log4cxx::rolling::RollingPolicy.
void log4cxx::rolling::FixedWindowRollingPolicy::rollover | ( | ) |
|
overridevirtual |
Prepare for a rollover.This method is called prior to closing the active log file, performs any necessary preliminary actions and describes actions needed after close of current log file.
currentActiveFile | file name for current active log file. |
append | current value of the parent FileAppender.getAppend(). |
pool | pool for memory allocations during call. |
SecurityException | if denied access to log files. |
Implements log4cxx::rolling::RollingPolicy.
void log4cxx::rolling::FixedWindowRollingPolicy::setMaxIndex | ( | int | newVal | ) |
void log4cxx::rolling::FixedWindowRollingPolicy::setMinIndex | ( | int | newVal | ) |
|
overridevirtual |
Set option
to value
.
Supported options | Supported values | Default value |
---|---|---|
MinIndex | 1-12 | 1 |
MaxIndex | 1-12 | 7 |
ThrowIOExceptionOnForkFailure | True,False | True |
Implements log4cxx::spi::OptionHandler.