log4cplus_DailyRollingFileAppender(3)
| log4cplus::DailyRollingFileAppender(3) | log4cplus | log4cplus::DailyRollingFileAppender(3) |
NAME
log4cplus::DailyRollingFileAppender - DailyRollingFileAppender extends FileAppender so that the underlying file is rolled over at a user chosen frequency.
SYNOPSIS
#include <fileappender.h>
Inherits log4cplus::FileAppender.
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.
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. 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. bool
isClosed () const
Check if this appender is in closed state. void syncDoAppend (const
log4cplus::spi::InternalLoggingEvent &event)
This method performs threshold checks and invokes filters before delegating
actual logging to the subclasses specific append method. void
asyncDoAppend (const log4cplus::spi::InternalLoggingEvent
&event)
This method performs book keeping related to asynchronous logging and executes
syncDoAppend() to do the actual logging. void doAppend
(const log4cplus::spi::InternalLoggingEvent &event)
This function checks async flag. virtual log4cplus::tstring
getName ()
Get the name of this appender. virtual void setName (const
log4cplus::tstring &name)
Set the name of this appender. virtual void setErrorHandler
(std::unique_ptr< ErrorHandler > eh)
Set the ErrorHandler for this Appender. virtual
ErrorHandler * getErrorHandler ()
Return the currently set ErrorHandler for this
Appender. virtual void setLayout
(std::unique_ptr< Layout > layout)
Set the layout for this appender. virtual Layout * getLayout ()
Returns the layout of this appender. void setFilter
(log4cplus::spi::FilterPtr f)
Set the filter chain on this Appender. log4cplus::spi::FilterPtr
getFilter () const
Get the filter chain on this Appender. void addFilter
(log4cplus::spi::FilterPtr f)
Add filter at the end of the filters chain. void addFilter
(std::function< spi::FilterResult(const
log4cplus::spi::InternalLoggingEvent &)>)
Add filter at the end of the filters chain. LogLevel
getThreshold () const
Returns this appenders threshold LogLevel. void setThreshold
(LogLevel th)
Set the threshold LogLevel. bool isAsSevereAsThreshold (LogLevel
ll) const
Check whether the message LogLevel is below the appender's threshold. void
waitToFinishAsyncLogging ()
This method waits for all events that are being asynchronously logged to
finish.
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. 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. bool createDirs
When this variable is true, FileAppender will try to create missing
directories in path leading to log file. 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.
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. log4cplus::tstring name
Appenders are named. LogLevel threshold
There is no LogLevel threshold filtering by default.
log4cplus::spi::FilterPtr filter
The first filter in the filter chain. std::unique_ptr< ErrorHandler
> errorHandler
It is assumed and enforced that errorHandler is never null.
std::unique_ptr< helpers::LockFile > lockFile
Optional system wide synchronization lock. bool useLockFile
Use lock file for inter-process synchronization of access to log file. bool
async
Asynchronous append. std::atomic< std::size_t > in_flight
std::mutex in_flight_mutex
std::condition_variable in_flight_condition
bool closed
Is this appender closed?
Additional Inherited Members
Public Attributes inherited from
log4cplus::helpers::SharedObject
thread::Mutex access_mutex
Detailed Description
DailyRollingFileAppender extends FileAppender so that the underlying file is rolled over at a user chosen frequency.
Properties
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.
Constructor & Destructor Documentation
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 log4cplus::DailyRollingFileAppender::~DailyRollingFileAppender () [virtual]
Member Function Documentation
virtual void log4cplus::DailyRollingFileAppender::append (const spi::InternalLoggingEvent & event) [protected], [virtual]
Subclasses of Appender should implement this method to perform actual logging.
See also
Reimplemented from log4cplus::FileAppenderBase.
log4cplus::helpers::Time log4cplus::DailyRollingFileAppender::calculateNextRolloverTime (const log4cplus::helpers::Time & t) const [protected]
virtual void log4cplus::DailyRollingFileAppender::close () [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.
log4cplus::tstring log4cplus::DailyRollingFileAppender::getFilename (const log4cplus::helpers::Time & t) const [protected]
void log4cplus::DailyRollingFileAppender::rollover (bool alreadyLocked = false) [protected]
Member Data Documentation
log4cplus::tstring log4cplus::DailyRollingFileAppender::datePattern [protected]
Definition at line 341 of file fileappender.h.
int log4cplus::DailyRollingFileAppender::maxBackupIndex [protected]
Definition at line 339 of file fileappender.h.
log4cplus::helpers::Time log4cplus::DailyRollingFileAppender::nextRolloverTime [protected]
Definition at line 338 of file fileappender.h.
bool log4cplus::DailyRollingFileAppender::rollOnClose [protected]
Definition at line 340 of file fileappender.h.
DailyRollingFileSchedule log4cplus::DailyRollingFileAppender::schedule [protected]
Definition at line 336 of file fileappender.h.
log4cplus::tstring log4cplus::DailyRollingFileAppender::scheduledFilename [protected]
Definition at line 337 of file fileappender.h.
Author
Generated automatically by Doxygen for log4cplus from the source code.
| Mon Jun 5 2023 21:46:10 | Version 2.0.7 |
