Class RotateStrategyByTimeOfDay

java.lang.Object
org.apache.log.output.io.rotate.RotateStrategyByTimeOfDay
All Implemented Interfaces:
RotateStrategy

public class RotateStrategyByTimeOfDay extends Object implements RotateStrategy
Rotation stragety based on a specific time of day.
Author:
Leif Mortenson
  • Field Details

    • TIME_24_HOURS

      private static final long TIME_24_HOURS
      Constant that stores the the number of ms in 24 hours.
      See Also:
    • m_currentRotation

      private long m_currentRotation
      Time in ms that the current rotation started.
  • Constructor Details

    • RotateStrategyByTimeOfDay

      public RotateStrategyByTimeOfDay()
      Rotate logs at specific time of day. By default do log rotation at 00:00:00 every day.
    • RotateStrategyByTimeOfDay

      public RotateStrategyByTimeOfDay(long time)
      Rotate logs at specific time of day.
      Parameters:
      time - Offset in milliseconds into the day to perform the log rotation.
  • Method Details

    • reset

      public void reset()
      reset interval history counters.
      Specified by:
      reset in interface RotateStrategy
    • isRotationNeeded

      public boolean isRotationNeeded(String data, File file)
      Check if now a log rotation is neccessary. If the time of the current rotation + 24 hours is less than the current time. If not then a rotation is needed.
      Specified by:
      isRotationNeeded in interface RotateStrategy
      Parameters:
      data - the last message written to the log system
      file - not used
      Returns:
      boolean return true if log rotation is neccessary, else false