blob: 00143919761d1e94a71f842ace28164b377a3fba [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_144) on Sat Apr 25 12:11:38 MST 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DefaultRolloverStrategy (Apache Log4j Core 2.13.2 API)</title>
<meta name="date" content="2020-04-25">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DefaultRolloverStrategy (Apache Log4j Core 2.13.2 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":41,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":9,"i9":10,"i10":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultRolloverStrategy.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.html" title="class in org.apache.logging.log4j.core.appender.rolling"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.Builder.html" title="class in org.apache.logging.log4j.core.appender.rolling"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html" target="_top">Frames</a></li>
<li><a href="DefaultRolloverStrategy.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.apache.logging.log4j.core.appender.rolling.AbstractRolloverStrategy">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.logging.log4j.core.appender.rolling</div>
<h2 title="Class DefaultRolloverStrategy" class="title">Class DefaultRolloverStrategy</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html" title="class in org.apache.logging.log4j.core.appender.rolling">org.apache.logging.log4j.core.appender.rolling.AbstractRolloverStrategy</a></li>
<li>
<ul class="inheritance">
<li>org.apache.logging.log4j.core.appender.rolling.DefaultRolloverStrategy</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/RolloverStrategy.html" title="interface in org.apache.logging.log4j.core.appender.rolling">RolloverStrategy</a></dd>
</dl>
<hr>
<br>
<pre><a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/Plugin.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@Plugin</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/Plugin.html#name--">name</a>="DefaultRolloverStrategy",
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/Plugin.html#category--">category</a>="Core",
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/Plugin.html#printObject--">printObject</a>=true)
public class <a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.82">DefaultRolloverStrategy</a>
extends <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html" title="class in org.apache.logging.log4j.core.appender.rolling">AbstractRolloverStrategy</a></pre>
<div class="block">When rolling over, <code>DefaultRolloverStrategy</code> renames files according to an algorithm as described below.
<p>
The DefaultRolloverStrategy is a combination of a time-based policy and a fixed-window policy. When the file name
pattern contains a date format then the rollover time interval will be used to calculate the time to use in the file
pattern. When the file pattern contains an integer replacement token one of the counting techniques will be used.
</p>
<p>
When the ascending attribute is set to true (the default) then the counter will be incremented and the current log
file will be renamed to include the counter value. If the counter hits the maximum value then the oldest file, which
will have the smallest counter, will be deleted, all other files will be renamed to have their counter decremented
and then the current file will be renamed to have the maximum counter value. Note that with this counting strategy
specifying a large maximum value may entirely avoid renaming files.
</p>
<p>
When the ascending attribute is false, then the "normal" fixed-window strategy will be used.
</p>
<p>
Let <em>max</em> and <em>min</em> represent the values of respectively the <b>MaxIndex</b> and <b>MinIndex</b>
options. Let "foo.log" be the value of the <b>ActiveFile</b> option and "foo.%i.log" the value of
<b>FileNamePattern</b>. Then, when rolling over, the file <code>foo.<em>max</em>.log</code> will be deleted, the file
<code>foo.<em>max-1</em>.log</code> will be renamed as <code>foo.<em>max</em>.log</code>, the file
<code>foo.<em>max-2</em>.log</code> renamed as <code>foo.<em>max-1</em>.log</code>, and so on, the file
<code>foo.<em>min+1</em>.log</code> renamed as <code>foo.<em>min+2</em>.log</code>. Lastly, the active file
<code>foo.log</code> will be renamed as <code>foo.<em>min</em>.log</code> and a new active file name
<code>foo.log</code> will be created.
</p>
<p>
Given that this rollover algorithm requires as many file renaming operations as the window size, large window sizes
are discouraged.
</p></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.Builder.html" title="class in org.apache.logging.log4j.core.appender.rolling">DefaultRolloverStrategy.Builder</a></span></code>
<div class="block">Builds DefaultRolloverStrategy instances.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.logging.log4j.core.appender.rolling.AbstractRolloverStrategy">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.logging.log4j.core.appender.rolling.<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html" title="class in org.apache.logging.log4j.core.appender.rolling">AbstractRolloverStrategy</a></h3>
<code><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#LOGGER">LOGGER</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#PATTERN_COUNTER">PATTERN_COUNTER</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#strSubstitutor">strSubstitutor</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#DefaultRolloverStrategy-int-int-boolean-int-org.apache.logging.log4j.core.lookup.StrSubstitutor-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-">DefaultRolloverStrategy</a></span>(int&nbsp;minIndex,
int&nbsp;maxIndex,
boolean&nbsp;useMax,
int&nbsp;compressionLevel,
<a href="../../../../../../../org/apache/logging/log4j/core/lookup/StrSubstitutor.html" title="class in org.apache.logging.log4j.core.lookup">StrSubstitutor</a>&nbsp;strSubstitutor,
<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>[]&nbsp;customActions,
boolean&nbsp;stopCustomActionsOnError)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Since 2.9 Added tempCompressedFilePatternString parameter</span></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#DefaultRolloverStrategy-int-int-boolean-int-org.apache.logging.log4j.core.lookup.StrSubstitutor-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-java.lang.String-">DefaultRolloverStrategy</a></span>(int&nbsp;minIndex,
int&nbsp;maxIndex,
boolean&nbsp;useMax,
int&nbsp;compressionLevel,
<a href="../../../../../../../org/apache/logging/log4j/core/lookup/StrSubstitutor.html" title="class in org.apache.logging.log4j.core.lookup">StrSubstitutor</a>&nbsp;strSubstitutor,
<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>[]&nbsp;customActions,
boolean&nbsp;stopCustomActionsOnError,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tempCompressedFilePatternString)</code>
<div class="block">Constructs a new instance.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html" title="class in org.apache.logging.log4j.core.appender.rolling">DefaultRolloverStrategy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#createStrategy-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-org.apache.logging.log4j.core.config.Configuration-">createStrategy</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;max,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;min,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileIndex,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;compressionLevelStr,
<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>[]&nbsp;customActions,
boolean&nbsp;stopCustomActionsOnError,
<a href="../../../../../../../org/apache/logging/log4j/core/config/Configuration.html" title="interface in org.apache.logging.log4j.core.config">Configuration</a>&nbsp;config)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">Since 2.9 Usage of Builder API is preferable</span></div>
</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#getCompressionLevel--">getCompressionLevel</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#getCustomActions--">getCustomActions</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#getMaxIndex--">getMaxIndex</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#getMinIndex--">getMinIndex</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/PatternProcessor.html" title="class in org.apache.logging.log4j.core.appender.rolling">PatternProcessor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#getTempCompressedFilePattern--">getTempCompressedFilePattern</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#isStopCustomActionsOnError--">isStopCustomActionsOnError</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#isUseMax--">isUseMax</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.Builder.html" title="class in org.apache.logging.log4j.core.appender.rolling">DefaultRolloverStrategy.Builder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#newBuilder--">newBuilder</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/RolloverDescription.html" title="interface in org.apache.logging.log4j.core.appender.rolling">RolloverDescription</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#rollover-org.apache.logging.log4j.core.appender.rolling.RollingFileManager-">rollover</a></span>(<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/RollingFileManager.html" title="class in org.apache.logging.log4j.core.appender.rolling">RollingFileManager</a>&nbsp;manager)</code>
<div class="block">Performs the rollover.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#toString--">toString</a></span>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.logging.log4j.core.appender.rolling.AbstractRolloverStrategy">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.logging.log4j.core.appender.rolling.<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html" title="class in org.apache.logging.log4j.core.appender.rolling">AbstractRolloverStrategy</a></h3>
<code><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#getEligibleFiles-org.apache.logging.log4j.core.appender.rolling.RollingFileManager-">getEligibleFiles</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#getEligibleFiles-org.apache.logging.log4j.core.appender.rolling.RollingFileManager-boolean-">getEligibleFiles</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#getEligibleFiles-java.lang.String-java.lang.String-">getEligibleFiles</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#getEligibleFiles-java.lang.String-java.lang.String-boolean-">getEligibleFiles</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#getEligibleFiles-java.lang.String-java.lang.String-java.lang.String-boolean-">getEligibleFiles</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#getStrSubstitutor--">getStrSubstitutor</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#merge-org.apache.logging.log4j.core.appender.rolling.action.Action-java.util.List-boolean-">merge</a>, <a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#suffixLength-java.lang.String-">suffixLength</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="DefaultRolloverStrategy-int-int-boolean-int-org.apache.logging.log4j.core.lookup.StrSubstitutor-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultRolloverStrategy</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
protected&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.341">DefaultRolloverStrategy</a>(int&nbsp;minIndex,
int&nbsp;maxIndex,
boolean&nbsp;useMax,
int&nbsp;compressionLevel,
<a href="../../../../../../../org/apache/logging/log4j/core/lookup/StrSubstitutor.html" title="class in org.apache.logging.log4j.core.lookup">StrSubstitutor</a>&nbsp;strSubstitutor,
<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>[]&nbsp;customActions,
boolean&nbsp;stopCustomActionsOnError)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Since 2.9 Added tempCompressedFilePatternString parameter</span></div>
<div class="block">Constructs a new instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>minIndex</code> - The minimum index.</dd>
<dd><code>maxIndex</code> - The maximum index.</dd>
<dd><code>customActions</code> - custom actions to perform asynchronously after rollover</dd>
<dd><code>stopCustomActionsOnError</code> - whether to stop executing asynchronous actions if an error occurs</dd>
</dl>
</li>
</ul>
<a name="DefaultRolloverStrategy-int-int-boolean-int-org.apache.logging.log4j.core.lookup.StrSubstitutor-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DefaultRolloverStrategy</h4>
<pre>protected&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.358">DefaultRolloverStrategy</a>(int&nbsp;minIndex,
int&nbsp;maxIndex,
boolean&nbsp;useMax,
int&nbsp;compressionLevel,
<a href="../../../../../../../org/apache/logging/log4j/core/lookup/StrSubstitutor.html" title="class in org.apache.logging.log4j.core.lookup">StrSubstitutor</a>&nbsp;strSubstitutor,
<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>[]&nbsp;customActions,
boolean&nbsp;stopCustomActionsOnError,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tempCompressedFilePatternString)</pre>
<div class="block">Constructs a new instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>minIndex</code> - The minimum index.</dd>
<dd><code>maxIndex</code> - The maximum index.</dd>
<dd><code>customActions</code> - custom actions to perform asynchronously after rollover</dd>
<dd><code>stopCustomActionsOnError</code> - whether to stop executing asynchronous actions if an error occurs</dd>
<dd><code>tempCompressedFilePatternString</code> - File pattern of the working file
used during compression, if null no temporary file are used</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="newBuilder--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newBuilder</h4>
<pre><a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginBuilderFactory.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginBuilderFactory</a>
public static&nbsp;<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.Builder.html" title="class in org.apache.logging.log4j.core.appender.rolling">DefaultRolloverStrategy.Builder</a>&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.274">newBuilder</a>()</pre>
</li>
</ul>
<a name="createStrategy-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-org.apache.logging.log4j.core.config.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createStrategy</h4>
<pre><a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginFactory.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginFactory</a>
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static&nbsp;<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html" title="class in org.apache.logging.log4j.core.appender.rolling">DefaultRolloverStrategy</a>&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.294">createStrategy</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginAttribute</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html#value--">value</a>="max")
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;max,
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginAttribute</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html#value--">value</a>="min")
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;min,
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginAttribute</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html#value--">value</a>="fileIndex")
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;fileIndex,
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginAttribute</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html#value--">value</a>="compressionLevel")
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;compressionLevelStr,
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginElement.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginElement</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginElement.html#value--">value</a>="Actions")
<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>[]&nbsp;customActions,
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginAttribute</a>(<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html#value--">value</a>="stopCustomActionsOnError",<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginAttribute.html#defaultBoolean--">defaultBoolean</a>=true)
boolean&nbsp;stopCustomActionsOnError,
<a href="../../../../../../../org/apache/logging/log4j/core/config/plugins/PluginConfiguration.html" title="annotation in org.apache.logging.log4j.core.config.plugins">@PluginConfiguration</a>
<a href="../../../../../../../org/apache/logging/log4j/core/config/Configuration.html" title="interface in org.apache.logging.log4j.core.config">Configuration</a>&nbsp;config)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">Since 2.9 Usage of Builder API is preferable</span></div>
<div class="block">Creates the DefaultRolloverStrategy.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>max</code> - The maximum number of files to keep.</dd>
<dd><code>min</code> - The minimum number of files to keep.</dd>
<dd><code>fileIndex</code> - If set to "max" (the default), files with a higher index will be newer than files with a smaller
index. If set to "min", file renaming and the counter will follow the Fixed Window strategy.</dd>
<dd><code>compressionLevelStr</code> - The compression level, 0 (less) through 9 (more); applies only to ZIP files.</dd>
<dd><code>customActions</code> - custom actions to perform asynchronously after rollover</dd>
<dd><code>stopCustomActionsOnError</code> - whether to stop executing asynchronous actions if an error occurs</dd>
<dd><code>config</code> - The Configuration.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A DefaultRolloverStrategy.</dd>
</dl>
</li>
</ul>
<a name="getCompressionLevel--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCompressionLevel</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.372">getCompressionLevel</a>()</pre>
</li>
</ul>
<a name="getCustomActions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCustomActions</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/action/Action.html" title="interface in org.apache.logging.log4j.core.appender.rolling.action">Action</a>&gt;&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.376">getCustomActions</a>()</pre>
</li>
</ul>
<a name="getMaxIndex--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxIndex</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.380">getMaxIndex</a>()</pre>
</li>
</ul>
<a name="getMinIndex--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMinIndex</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.384">getMinIndex</a>()</pre>
</li>
</ul>
<a name="isStopCustomActionsOnError--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isStopCustomActionsOnError</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.388">isStopCustomActionsOnError</a>()</pre>
</li>
</ul>
<a name="isUseMax--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUseMax</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.392">isUseMax</a>()</pre>
</li>
</ul>
<a name="getTempCompressedFilePattern--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTempCompressedFilePattern</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/PatternProcessor.html" title="class in org.apache.logging.log4j.core.appender.rolling">PatternProcessor</a>&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.396">getTempCompressedFilePattern</a>()</pre>
</li>
</ul>
<a name="rollover-org.apache.logging.log4j.core.appender.rolling.RollingFileManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rollover</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/RolloverDescription.html" title="interface in org.apache.logging.log4j.core.appender.rolling">RolloverDescription</a>&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.518">rollover</a>(<a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/RollingFileManager.html" title="class in org.apache.logging.log4j.core.appender.rolling">RollingFileManager</a>&nbsp;manager)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/SecurityException.html?is-external=true" title="class or interface in java.lang">SecurityException</a></pre>
<div class="block">Performs the rollover.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>manager</code> - The RollingFileManager name for current active log file.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A RolloverDescription.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/SecurityException.html?is-external=true" title="class or interface in java.lang">SecurityException</a></code> - if an error occurs.</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../../../../src-html/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html#line.602">toString</a>()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultRolloverStrategy.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.html" title="class in org.apache.logging.log4j.core.appender.rolling"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.Builder.html" title="class in org.apache.logging.log4j.core.appender.rolling"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.html" target="_top">Frames</a></li>
<li><a href="DefaultRolloverStrategy.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.apache.logging.log4j.core.appender.rolling.AbstractRolloverStrategy">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><p align="center">Copyright &#169; 1999-2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.<br /> Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.</p></small></p>
</body>
</html>