/** * Get the new log file name. */ @Override public String getCurrentFileName(RollingFileManager rollingFileManager) { String pattern = rollingFileManager.getPatternProcessor().getPattern(); return getLogFileName(pattern); }
manager.getPatternProcessor().formatFileName(subst, buf, fileIndex); final String currentFileName = manager.getFileName();
manager.getPatternProcessor().formatFileName(subst, buf, highIndex); manager.getPatternProcessor().formatFileName(subst, buf, i - 1); buf.setLength(0); manager.getPatternProcessor().formatFileName(subst, buf, i - 1);
manager.getPatternProcessor().formatFileName(subst, buf, lowIndex); manager.getPatternProcessor().formatFileName(subst, buf, i + 1);
protected SortedMap<Integer, Path> getEligibleFiles(final RollingFileManager manager, final boolean isAscending) { final StringBuilder buf = new StringBuilder(); final String pattern = manager.getPatternProcessor().getPattern(); manager.getPatternProcessor().formatFileName(strSubstitutor, buf, NotANumber.NAN); return getEligibleFiles(buf.toString(), pattern, isAscending); }
@Override public String getCurrentFileName(final RollingFileManager manager) { if (currentFileName == null) { final SortedMap<Integer, Path> eligibleFiles = getEligibleFiles(manager); final int fileIndex = eligibleFiles.size() > 0 ? (nextIndex > 0 ? nextIndex : eligibleFiles.size()) : 1; final StringBuilder buf = new StringBuilder(255); manager.getPatternProcessor().formatFileName(strSubstitutor, buf, true, fileIndex); final int suffixLength = suffixLength(buf.toString()); final String name = suffixLength > 0 ? buf.substring(0, buf.length() - suffixLength) : buf.toString(); currentFileName = name; } return currentFileName; }
/** * Initializes the policy. * @param aManager The RollingFileManager. */ @Override public void initialize(final RollingFileManager aManager) { this.manager = aManager; // LOG4J2-531: call getNextTime twice to force initialization of both prevFileTime and nextFileTime aManager.getPatternProcessor().getNextTime(aManager.getFileTime(), interval, modulate); nextRolloverMillis = ThreadLocalRandom.current().nextLong(0, 1 + maxRandomDelayMillis) + aManager.getPatternProcessor().getNextTime(aManager.getFileTime(), interval, modulate); }
private void rollover() { manager.getPatternProcessor().setPrevFileTime(lastRollDate.getTime()); final Date thisRoll = cronExpression.getPrevFireTime(new Date()); manager.getPatternProcessor().setCurrentFileTime(thisRoll.getTime()); manager.rollover(); if (future != null) { lastRollDate = future.getFireTime(); } }
/** * Returns true if a rollover should occur. * @param event A reference to the currently event. * @return true if a rollover should take place, false otherwise. */ @Override public boolean isTriggeringEvent(final LogEvent event) { final boolean triggered = manager.getFileSize() > maxFileSize; if (triggered) { manager.getPatternProcessor().updateTime(); } return triggered; }
/** * Determines whether a rollover should occur. * @param event A reference to the currently event. * @return true if a rollover should occur. */ @Override public boolean isTriggeringEvent(final LogEvent event) { if (manager.getFileSize() == 0) { return false; } final long nowMillis = event.getTimeMillis(); if (nowMillis >= nextRolloverMillis) { nextRolloverMillis = ThreadLocalRandom.current().nextLong(0, 1 + maxRandomDelayMillis) + manager.getPatternProcessor().getNextTime(nowMillis, interval, modulate); return true; } return false; }
buf.setLength(0); manager.getPatternProcessor().formatFileName(strSubstitutor, buf, entry.getKey() - 1); final String currentName = entry.getValue().toFile().getName(); String renameTo = buf.toString();
buf.setLength(0); manager.getPatternProcessor().formatFileName(strSubstitutor, buf, entry.getKey() + 1); final String currentName = entry.getValue().toFile().getName(); String renameTo = buf.toString();
final Date lastRollForFile = cronExpression.getPrevFireTime(new Date(this.manager.getFileTime())); final Date lastRegularRoll = cronExpression.getPrevFireTime(new Date()); aManager.getPatternProcessor().setCurrentFileTime(lastRegularRoll.getTime()); LOGGER.debug("LastRollForFile {}, LastRegularRole {}", lastRollForFile, lastRegularRoll); aManager.getPatternProcessor().setPrevFileTime(lastRegularRoll.getTime()); if (checkOnStartup && lastRollForFile != null && lastRegularRoll != null && lastRollForFile.before(lastRegularRoll)) {
@Override public void updateData(final Object data) { final FactoryData factoryData = (FactoryData) data; setRolloverStrategy(factoryData.getRolloverStrategy()); setTriggeringPolicy(factoryData.getTriggeringPolicy()); setPatternProcessor(new PatternProcessor(factoryData.getPattern(), getPatternProcessor())); }
manager.getPatternProcessor().formatFileName(strSubstitutor, buf, fileIndex); final String currentFileName = manager.getFileName();