blob: 3a56bc050cfa8cbfec932ab30b5d7469a5ba212b [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>ReliabilityStrategy (Apache Log4j Core 2.23.1 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.logging.log4j.core.config, interface: ReliabilityStrategy">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.6.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/ReliabilityStrategy.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#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.logging.log4j.core.config</a></div>
<h1 title="Interface ReliabilityStrategy" class="title">Interface ReliabilityStrategy</h1>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="AwaitCompletionReliabilityStrategy.html" title="class in org.apache.logging.log4j.core.config">AwaitCompletionReliabilityStrategy</a></code>, <code><a href="AwaitUnconditionallyReliabilityStrategy.html" title="class in org.apache.logging.log4j.core.config">AwaitUnconditionallyReliabilityStrategy</a></code>, <code><a href="DefaultReliabilityStrategy.html" title="class in org.apache.logging.log4j.core.config">DefaultReliabilityStrategy</a></code>, <code><a href="LockingReliabilityStrategy.html" title="class in org.apache.logging.log4j.core.config">LockingReliabilityStrategy</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public interface </span><span class="element-name type-name-label">ReliabilityStrategy</span></div>
<div class="block">Interface for objects that know how to ensure delivery of log events to the appropriate appenders, even during and
after the configuration has been modified while the system is actively used.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#afterLogEvent()" class="member-name-link">afterLogEvent</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called after a log event was logged.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#beforeStopAppenders()" class="member-name-link">beforeStopAppenders</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called before all appenders are stopped.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#beforeStopConfiguration(org.apache.logging.log4j.core.config.Configuration)" class="member-name-link">beforeStopConfiguration</a><wbr>(<a href="Configuration.html" title="interface in org.apache.logging.log4j.core.config">Configuration</a>&nbsp;configuration)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called before the configuration is stopped.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getActiveLoggerConfig(org.apache.logging.log4j.util.Supplier)" class="member-name-link">getActiveLoggerConfig</a><wbr>(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/util/Supplier.html" title="class or interface in org.apache.logging.log4j.util" class="external-link">Supplier</a>&lt;<a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a>&gt;&nbsp;next)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">For internal use by the ReliabilityStrategy; returns the LoggerConfig to use.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#log(org.apache.logging.log4j.util.Supplier,java.lang.String,java.lang.String,org.apache.logging.log4j.Marker,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable)" class="member-name-link">log</a><wbr>(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/util/Supplier.html" title="class or interface in org.apache.logging.log4j.util" class="external-link">Supplier</a>&lt;<a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a>&gt;&nbsp;reconfigured,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;loggerName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;fqcn,
<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Marker.html" title="class or interface in org.apache.logging.log4j" class="external-link">Marker</a>&nbsp;marker,
<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a>&nbsp;level,
<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/message/Message.html" title="class or interface in org.apache.logging.log4j.message" class="external-link">Message</a>&nbsp;data,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;t)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Logs an event.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#log(org.apache.logging.log4j.util.Supplier,org.apache.logging.log4j.core.LogEvent)" class="member-name-link">log</a><wbr>(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/util/Supplier.html" title="class or interface in org.apache.logging.log4j.util" class="external-link">Supplier</a>&lt;<a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a>&gt;&nbsp;reconfigured,
<a href="../LogEvent.html" title="interface in org.apache.logging.log4j.core">LogEvent</a>&nbsp;event)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Logs an event.</div>
</div>
</div>
</div>
</div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="log(org.apache.logging.log4j.util.Supplier,java.lang.String,java.lang.String,org.apache.logging.log4j.Marker,org.apache.logging.log4j.Level,org.apache.logging.log4j.message.Message,java.lang.Throwable)">
<h3>log</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">log</span><wbr><span class="parameters">(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/util/Supplier.html" title="class or interface in org.apache.logging.log4j.util" class="external-link">Supplier</a>&lt;<a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a>&gt;&nbsp;reconfigured,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;loggerName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;fqcn,
<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Marker.html" title="class or interface in org.apache.logging.log4j" class="external-link">Marker</a>&nbsp;marker,
<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/Level.html" title="class or interface in org.apache.logging.log4j" class="external-link">Level</a>&nbsp;level,
<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/message/Message.html" title="class or interface in org.apache.logging.log4j.message" class="external-link">Message</a>&nbsp;data,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link">Throwable</a>&nbsp;t)</span></div>
<div class="block">Logs an event.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>reconfigured</code> - supplies the next LoggerConfig if the strategy's LoggerConfig is no longer active</dd>
<dd><code>loggerName</code> - The name of the Logger.</dd>
<dd><code>fqcn</code> - The fully qualified class name of the caller.</dd>
<dd><code>marker</code> - A Marker or null if none is present.</dd>
<dd><code>level</code> - The event Level.</dd>
<dd><code>data</code> - The Message.</dd>
<dd><code>t</code> - A Throwable or null.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="log(org.apache.logging.log4j.util.Supplier,org.apache.logging.log4j.core.LogEvent)">
<h3>log</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">log</span><wbr><span class="parameters">(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/util/Supplier.html" title="class or interface in org.apache.logging.log4j.util" class="external-link">Supplier</a>&lt;<a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a>&gt;&nbsp;reconfigured,
<a href="../LogEvent.html" title="interface in org.apache.logging.log4j.core">LogEvent</a>&nbsp;event)</span></div>
<div class="block">Logs an event.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>reconfigured</code> - supplies the next LoggerConfig if the strategy's LoggerConfig is no longer active</dd>
<dd><code>event</code> - The log event.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getActiveLoggerConfig(org.apache.logging.log4j.util.Supplier)">
<h3>getActiveLoggerConfig</h3>
<div class="member-signature"><span class="return-type"><a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a></span>&nbsp;<span class="element-name">getActiveLoggerConfig</span><wbr><span class="parameters">(<a href="https://logging.apache.org/log4j/2.x/apidocs/org/apache/logging/log4j/util/Supplier.html" title="class or interface in org.apache.logging.log4j.util" class="external-link">Supplier</a>&lt;<a href="LoggerConfig.html" title="class in org.apache.logging.log4j.core.config">LoggerConfig</a>&gt;&nbsp;next)</span></div>
<div class="block">For internal use by the ReliabilityStrategy; returns the LoggerConfig to use.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>next</code> - supplies the next LoggerConfig if the strategy's LoggerConfig is no longer active</dd>
<dt>Returns:</dt>
<dd>the currently active LoggerConfig</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="afterLogEvent()">
<h3>afterLogEvent</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">afterLogEvent</span>()</div>
<div class="block">Called after a log event was logged.</div>
</section>
</li>
<li>
<section class="detail" id="beforeStopAppenders()">
<h3>beforeStopAppenders</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">beforeStopAppenders</span>()</div>
<div class="block">Called before all appenders are stopped.</div>
</section>
</li>
<li>
<section class="detail" id="beforeStopConfiguration(org.apache.logging.log4j.core.config.Configuration)">
<h3>beforeStopConfiguration</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">beforeStopConfiguration</span><wbr><span class="parameters">(<a href="Configuration.html" title="interface in org.apache.logging.log4j.core.config">Configuration</a>&nbsp;configuration)</span></div>
<div class="block">Called before the configuration is stopped.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>configuration</code> - the configuration that will be stopped</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small><p align="center"> Copyright &copy; 1999-2024 <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>
</footer>
</div>
</div>
</body>
</html>