19#if !defined(_LOG4CXX_ROLLING_TIME_BASED_ROLLING_POLICY_H)
20#define _LOG4CXX_ROLLING_TIME_BASED_ROLLING_POLICY_H
141#if LOG4CXX_ABI_VERSION <= 15
157 LOG4CXX_DECLARE_PRIVATE_MEMBER_PTR(TimeBasedRollingPolicyPrivate, m_priv)
206 size_t fileLength)
override;
242 int createMMapFile(
const std::string& lastfilename, LOG4CXX_NS::helpers::Pool& pool);
247 bool isMapFileEmpty(LOG4CXX_NS::helpers::Pool& pool);
252 void initMMapFile(
const LogString& lastFileName, LOG4CXX_NS::helpers::Pool& pool);
257 int lockMMapFile(
int type);
262 int unLockMMapFile();
267 const std::string createFile(
const std::string& filename,
const std::string& suffix, LOG4CXX_NS::helpers::Pool& pool);
Implement this interface for your own strategies for outputting log statements.
Definition appender.h:55
void activateOptions(helpers::Pool &) override
TimeBasedRollingPolicy is both easy to configure and quite powerful.
Definition timebasedrollingpolicy.h:148
bool isTriggeringEvent(Appender *appender, const spi::LoggingEventPtr &event, const LogString &filename, size_t fileLength) override
Determines if a rollover may be appropriate at this time.
void activateOptions(helpers::Pool &) override
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,...
bool isLastFileNameUnchanged()
Was the name in shared memory set by this process?
RolloverDescriptionPtr initialize(const LogString ¤tActiveFile, const bool append, helpers::Pool &pool) override
Initialize the policy and return any initial actions for rolling file appender.Description of the ini...
void setOption(const LogString &option, const LogString &value) override
Set option to value.
log4cxx::pattern::PatternMap getFormatSpecifiers() const override
A map from "d" and "date" to a date conversion formatter.
void setMultiprocess(bool multiprocess)
void loadLastFileName()
Load the name (set by some other process) from shared memory.
virtual ~TimeBasedRollingPolicy()
A TriggeringPolicy controls the conditions under which rollover occurs.
Definition triggeringpolicy.h:51
std::shared_ptr< LoggingEvent > LoggingEventPtr
Definition appender.h:32
std::basic_string< logchar > LogString
Definition logstring.h:60
#define LOG4CXX_CAST_ENTRY(Interface)
Definition object.h:154
#define END_LOG4CXX_CAST_MAP()
Definition object.h:148
#define DECLARE_LOG4CXX_OBJECT(object)
Definition object.h:41
#define LOG4CXX_CAST_ENTRY_CHAIN(Interface)
Definition object.h:160
#define BEGIN_LOG4CXX_CAST_MAP()
Definition object.h:142
#define LOG4CXX_ACTIVATE_OPTIONS_FORMAL_PARAMETERS
Activate the options that were previously set with calls to option setters.
Definition optionhandler.h:53