log4cplus
2.1.0
|
DailyRollingFileAppender extends FileAppender so that the underlying file is rolled over at a user chosen frequency. More...
#include <fileappender.h>
Public Member Functions | |
DailyRollingFileAppender (const log4cplus::tstring &filename, DailyRollingFileSchedule schedule=DAILY, bool immediateFlush=true, int maxBackupIndex=10, bool createDirs=false, bool rollOnClose=true, const log4cplus::tstring &datePattern=log4cplus::tstring()) | |
DailyRollingFileAppender (const log4cplus::helpers::Properties &properties) | |
virtual | ~DailyRollingFileAppender () |
virtual void | close () |
Release any resources allocated within the appender such as file handles, network connections, etc. More... | |
Public Member Functions inherited from log4cplus::FileAppender | |
FileAppender (const log4cplus::tstring &filename, std::ios_base::openmode mode=std::ios_base::trunc, bool immediateFlush=true, bool createDirs=false) | |
FileAppender (const log4cplus::helpers::Properties &properties, std::ios_base::openmode mode=std::ios_base::trunc) | |
virtual | ~FileAppender () |
Public Member Functions inherited from log4cplus::FileAppenderBase | |
virtual std::locale | imbue (std::locale const &loc) |
Redefine default locale for output stream. More... | |
virtual std::locale | getloc () const |
Public Member Functions inherited from log4cplus::Appender | |
Appender () | |
Appender (const log4cplus::helpers::Properties &properties) | |
virtual | ~Appender () |
void | destructorImpl () |
This function is for derived appenders to call from their destructors. More... | |
bool | isClosed () const |
Check if this appender is in closed state. More... | |
void | syncDoAppend (const log4cplus::spi::InternalLoggingEvent &event) |
This method performs threshold checks and invokes filters before delegating actual logging to the subclasses specific {} method. More... | |
void | asyncDoAppend (const log4cplus::spi::InternalLoggingEvent &event) |
This method performs book keeping related to asynchronous logging and executes syncDoAppend() to do the actual logging. More... | |
void | doAppend (const log4cplus::spi::InternalLoggingEvent &event) |
This function checks async flag. More... | |
virtual log4cplus::tstring | getName () |
Get the name of this appender. More... | |
virtual void | setName (const log4cplus::tstring &name) |
Set the name of this appender. More... | |
virtual void | setErrorHandler (std::unique_ptr< ErrorHandler > eh) |
Set the ErrorHandler for this Appender. More... | |
virtual ErrorHandler * | getErrorHandler () |
Return the currently set ErrorHandler for this Appender. More... | |
virtual void | setLayout (std::unique_ptr< Layout > layout) |
Set the layout for this appender. More... | |
virtual Layout * | getLayout () |
Returns the layout of this appender. More... | |
void | setFilter (log4cplus::spi::FilterPtr f) |
Set the filter chain on this Appender. More... | |
log4cplus::spi::FilterPtr | getFilter () const |
Get the filter chain on this Appender. More... | |
void | addFilter (log4cplus::spi::FilterPtr f) |
Add filter at the end of the filters chain. More... | |
void | addFilter (std::function< spi::FilterResult(const log4cplus::spi::InternalLoggingEvent &)>) |
Add filter at the end of the filters chain. More... | |
LogLevel | getThreshold () const |
Returns this appenders threshold LogLevel. More... | |
void | setThreshold (LogLevel th) |
Set the threshold LogLevel. More... | |
bool | isAsSevereAsThreshold (LogLevel ll) const |
Check whether the message LogLevel is below the appender's threshold. More... | |
void | waitToFinishAsyncLogging () |
This method waits for all events that are being asynchronously logged to finish. More... | |
Public Member Functions inherited from log4cplus::helpers::SharedObject | |
void | addReference () const LOG4CPLUS_NOEXCEPT |
void | removeReference () const |
Protected Member Functions | |
virtual void | append (const spi::InternalLoggingEvent &event) |
Subclasses of Appender should implement this method to perform actual logging. More... | |
void | rollover (bool alreadyLocked=false) |
log4cplus::helpers::Time | calculateNextRolloverTime (const log4cplus::helpers::Time &t) const |
log4cplus::tstring | getFilename (const log4cplus::helpers::Time &t) const |
Protected Member Functions inherited from log4cplus::FileAppender | |
void | init () |
Protected Member Functions inherited from log4cplus::FileAppenderBase | |
FileAppenderBase (const log4cplus::tstring &filename, std::ios_base::openmode mode=std::ios_base::trunc, bool immediateFlush=true, bool createDirs=false) | |
FileAppenderBase (const log4cplus::helpers::Properties &properties, std::ios_base::openmode mode=std::ios_base::trunc) | |
void | init () |
virtual void | open (std::ios_base::openmode mode) |
bool | reopen () |
Protected Member Functions inherited from log4cplus::Appender | |
tstring & | formatEvent (const log4cplus::spi::InternalLoggingEvent &event) const |
Protected Member Functions inherited from log4cplus::helpers::SharedObject | |
SharedObject () | |
SharedObject (const SharedObject &) | |
SharedObject (SharedObject &&) | |
virtual | ~SharedObject () |
SharedObject & | operator= (const SharedObject &) LOG4CPLUS_NOEXCEPT |
SharedObject & | operator= (SharedObject &&) LOG4CPLUS_NOEXCEPT |
Protected Attributes | |
DailyRollingFileSchedule | schedule |
log4cplus::tstring | scheduledFilename |
log4cplus::helpers::Time | nextRolloverTime |
int | maxBackupIndex |
bool | rollOnClose |
log4cplus::tstring | datePattern |
Protected Attributes inherited from log4cplus::FileAppenderBase | |
bool | immediateFlush |
Immediate flush means that the underlying writer or output stream will be flushed at the end of each append operation. More... | |
bool | createDirs |
When this variable is true, FileAppender will try to create missing directories in path leading to log file. More... | |
int | reopenDelay |
When any append operation fails, reopenDelay says for how many seconds the next attempt to re-open the log file and resume logging will be delayed. More... | |
unsigned long | bufferSize |
std::unique_ptr< log4cplus::tchar[]> | buffer |
log4cplus::tofstream | out |
log4cplus::tstring | filename |
log4cplus::tstring | localeName |
log4cplus::tstring | lockFileName |
std::ios_base::openmode | fileOpenMode |
log4cplus::helpers::Time | reopen_time |
Protected Attributes inherited from log4cplus::Appender | |
std::unique_ptr< Layout > | layout |
The layout variable does not need to be set if the appender implementation has its own layout. More... | |
log4cplus::tstring | name |
Appenders are named. More... | |
LogLevel | threshold |
There is no LogLevel threshold filtering by default. More... | |
log4cplus::spi::FilterPtr | filter |
The first filter in the filter chain. More... | |
std::unique_ptr< ErrorHandler > | errorHandler |
It is assumed and enforced that errorHandler is never null. More... | |
std::unique_ptr< helpers::LockFile > | lockFile |
Optional system wide synchronization lock. More... | |
bool | useLockFile |
Use lock file for inter-process synchronization of access to log file. More... | |
bool | async |
Asynchronous append. More... | |
std::atomic< std::size_t > | in_flight |
std::mutex | in_flight_mutex |
std::condition_variable | in_flight_condition |
bool | closed |
Is this appender closed? More... | |
Additional Inherited Members | |
Public Attributes inherited from log4cplus::helpers::SharedObject | |
thread::Mutex | access_mutex |
DailyRollingFileAppender extends FileAppender so that the underlying file is rolled over at a user chosen frequency.
Properties additional to FileAppender's properties:
Schedule
This property specifies rollover schedule. The possible values are MONTHLY
, WEEKLY
, DAILY
, TWICE_DAILY
, HOURLY
and MINUTELY
.
MaxBackupIndex
This property limits how many backup files are kept per single logging period; e.g. how many log.2009-11-07.1
, log.2009-11-07.2
etc. files are kept.
RollOnClose
This property specifies whether to rollover log files upon shutdown. By default it's set to true
to retain compatibility with legacy code, however it may lead to undesired behaviour as described in the github issue #120.
DatePattern
This property specifies filename suffix pattern to use for periodical backups of the logfile. The patern should be in format supported by log4cplus::helpers::Time::getFormatterTime(). Please notice that the format of the pattern is similar but not identical to the one used for this option in the corresponding Log4J class. If the property isn't specified a reasonable default for a given schedule type is used.
Definition at line 311 of file fileappender.h.
log4cplus::DailyRollingFileAppender::DailyRollingFileAppender | ( | const log4cplus::tstring & | filename, |
DailyRollingFileSchedule | schedule = DAILY , |
||
bool | immediateFlush = true , |
||
int | maxBackupIndex = 10 , |
||
bool | createDirs = false , |
||
bool | rollOnClose = true , |
||
const log4cplus::tstring & | datePattern = log4cplus::tstring() |
||
) |
log4cplus::DailyRollingFileAppender::DailyRollingFileAppender | ( | const log4cplus::helpers::Properties & | properties | ) |
|
virtual |
|
protectedvirtual |
Subclasses of Appender
should implement this method to perform actual logging.
Reimplemented from log4cplus::FileAppenderBase.
|
protected |
|
virtual |
Release any resources allocated within the appender such as file handles, network connections, etc.
It is a programming error to append to a closed appender.
Reimplemented from log4cplus::FileAppenderBase.
|
protected |
|
protected |
|
protected |
Definition at line 341 of file fileappender.h.
|
protected |
Definition at line 339 of file fileappender.h.
|
protected |
Definition at line 338 of file fileappender.h.
|
protected |
Definition at line 340 of file fileappender.h.
|
protected |
Definition at line 336 of file fileappender.h.
|
protected |
Definition at line 337 of file fileappender.h.