code: protected void subAppend(LoggingEvent event) {
  		long n = event.timeStamp;
  		if (n >= nextCheck) {
  			try {
  				now.setTime(n);
  				cleanupAndRollOver();
  			} catch (IOException ioe) {
  				if (ioe instanceof InterruptedIOException) {
  					Thread.currentThread().interrupt();
  				}
  				LogLog.error("rollOver() failed.", ioe);
  			}
  		}
  		super.subAppend(event);
  	}
docs: This method differentiates DailyRollingFileAppender from its super class.
  
  <p>
  Before actually logging, this method will check whether it is time to do
  a rollover. If it is, it will schedule the next rollover time and then
  rollover.