Class CronTriggeringPolicy
- java.lang.Object
-
- org.apache.logging.log4j.core.AbstractLifeCycle
-
- org.apache.logging.log4j.core.appender.rolling.AbstractTriggeringPolicy
-
- org.apache.logging.log4j.core.appender.rolling.CronTriggeringPolicy
-
- All Implemented Interfaces:
TriggeringPolicy
,LifeCycle
,LifeCycle2
@Plugin(name="CronTriggeringPolicy", category="Core", printObject=true) @Scheduled public final class CronTriggeringPolicy extends AbstractTriggeringPolicy
Rolls a file over based on a cron schedule.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle
LifeCycle.State
-
-
Field Summary
-
Fields inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGER
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static CronTriggeringPolicy
createPolicy(Configuration configuration, String evaluateOnStartup, String schedule)
Creates a ScheduledTriggeringPolicy.CronExpression
getCronExpression()
void
initialize(RollingFileManager aManager)
Initializes the policy.boolean
isTriggeringEvent(LogEvent event)
Determines whether a rollover should occur.boolean
stop(long timeout, TimeUnit timeUnit)
Blocks until all tasks have completed execution after a shutdown request, or the timeout occurs, or the current thread is interrupted, whichever happens first.String
toString()
-
Methods inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
equalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, start, stop, stop
-
-
-
-
Method Detail
-
initialize
public void initialize(RollingFileManager aManager)
Initializes the policy.- Parameters:
aManager
- The RollingFileManager.
-
isTriggeringEvent
public boolean isTriggeringEvent(LogEvent event)
Determines whether a rollover should occur.- Parameters:
event
- A reference to the currently event.- Returns:
- true if a rollover should occur.
-
getCronExpression
public CronExpression getCronExpression()
-
createPolicy
@PluginFactory public static CronTriggeringPolicy createPolicy(@PluginConfiguration Configuration configuration, @PluginAttribute("evaluateOnStartup") String evaluateOnStartup, @PluginAttribute("schedule") String schedule)
Creates a ScheduledTriggeringPolicy.- Parameters:
configuration
- the Configuration.evaluateOnStartup
- check if the file should be rolled over immediately.schedule
- the cron expression.- Returns:
- a ScheduledTriggeringPolicy.
-
stop
public boolean stop(long timeout, TimeUnit timeUnit)
Description copied from interface:LifeCycle2
Blocks until all tasks have completed execution after a shutdown request, or the timeout occurs, or the current thread is interrupted, whichever happens first.- Specified by:
stop
in interfaceLifeCycle2
- Overrides:
stop
in classAbstractLifeCycle
- Parameters:
timeout
- the maximum time to waittimeUnit
- the time unit of the timeout argument- Returns:
- true if the receiver was stopped cleanly and normally, false otherwise.
-
-