<!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:44 MST 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Deprecated List (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="Deprecated List (Apache Log4j Core 2.13.2 API)";
        }
    }
    catch(err) {
    }
//-->
</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>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</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>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.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>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Deprecated API" class="title">Deprecated API</h1>
<h2 title="Contents">Contents</h2>
<ul>
<li><a href="#class">Deprecated Classes</a></li>
<li><a href="#field">Deprecated Fields</a></li>
<li><a href="#method">Deprecated Methods</a></li>
<li><a href="#constructor">Deprecated Constructors</a></li>
<li><a href="#annotation.type.member">Deprecated Annotation Type Elements</a></li>
</ul>
</div>
<div class="contentContainer"><a name="class">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Classes table, listing deprecated classes, and an explanation">
<caption><span>Deprecated Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/SerializedLayout.html" title="class in org.apache.logging.log4j.core.layout">org.apache.logging.log4j.core.layout.SerializedLayout</a>
<div class="block"><span class="deprecationComment">Java Serialization has inherent security weaknesses, see https://www.owasp.org/index.php/Deserialization_of_untrusted_data .
 Using this layout is no longer recommended. An alternative layout containing the same information is
 <a href="org/apache/logging/log4j/core/layout/JsonLayout.html" title="class in org.apache.logging.log4j.core.layout"><code>JsonLayout</code></a> when configured with properties="true". Deprecated since 2.9.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="field">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Fields table, listing deprecated fields, and an explanation">
<caption><span>Deprecated Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Field and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/util/NullOutputStream.html#NULL_OUTPUT_STREAM">org.apache.logging.log4j.core.util.NullOutputStream.NULL_OUTPUT_STREAM</a>
<div class="block"><span class="deprecationComment">Deprecated in 2.7: use <a href="org/apache/logging/log4j/core/util/NullOutputStream.html#getInstance--"><code>NullOutputStream.getInstance()</code></a>.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="method">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Methods table, listing deprecated methods, and an explanation">
<caption><span>Deprecated Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Method and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#applyRules-java.util.Calendar-java.lang.StringBuffer-">org.apache.logging.log4j.core.util.datetime.FastDatePrinter.applyRules(Calendar, StringBuffer)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#format-java.util.Calendar-"><code>FastDatePrinter.format(Calendar)</code></a> or <a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#format-java.util.Calendar-B-"><code>FastDatePrinter.format(Calendar, Appendable)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Help.TextTable.html#cellAt-int-int-">org.apache.logging.log4j.core.tools.picocli.CommandLine.Help.TextTable.cellAt(int, int)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Help.TextTable.html#textAt-int-int-"><code>CommandLine.Help.TextTable.textAt(int, int)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AsyncAppender.html#createAppender-org.apache.logging.log4j.core.config.AppenderRef:A-java.lang.String-boolean-long-int-java.lang.String-boolean-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.config.Configuration-boolean-">org.apache.logging.log4j.core.appender.AsyncAppender.createAppender(AppenderRef[], String, boolean, long, int, String, boolean, Filter, Configuration, boolean)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/appender/AsyncAppender.Builder.html" title="class in org.apache.logging.log4j.core.appender"><code>AsyncAppender.Builder</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/SmtpAppender.html#createAppender-org.apache.logging.log4j.core.config.Configuration-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-">org.apache.logging.log4j.core.appender.SmtpAppender.createAppender(Configuration, String, String, String, String, String, String, String, String, String, String, String, String, String, String, Layout&lt;? extends Serializable&gt;, Filter, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/SmtpAppender.html#newBuilder--"><code>SmtpAppender.newBuilder()</code></a> to create and configure a <a href="org/apache/logging/log4j/core/appender/SmtpAppender.Builder.html" title="class in org.apache.logging.log4j.core.appender"><code>SmtpAppender.Builder</code></a> instance.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/ConsoleAppender.html#createAppender-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.appender.ConsoleAppender.Target-java.lang.String-boolean-boolean-boolean-">org.apache.logging.log4j.core.appender.ConsoleAppender.createAppender(Layout&lt;? extends Serializable&gt;, Filter, ConsoleAppender.Target, String, boolean, boolean, boolean)</a>
<div class="block"><span class="deprecationComment">Deprecated in 2.7; use <a href="org/apache/logging/log4j/core/appender/ConsoleAppender.html#newBuilder--"><code>ConsoleAppender.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/mom/kafka/KafkaAppender.html#createAppender-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-boolean-java.lang.String-org.apache.logging.log4j.core.config.Property:A-org.apache.logging.log4j.core.config.Configuration-java.lang.String-">org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.createAppender(Layout&lt;? extends Serializable&gt;, Filter, String, boolean, String, Property[], Configuration, String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/ConsoleAppender.html#createAppender-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.appender.ConsoleAppender.createAppender(Layout&lt;? extends Serializable&gt;, Filter, String, String, String, String)</a>
<div class="block"><span class="deprecationComment">Deprecated in 2.7; use <a href="org/apache/logging/log4j/core/appender/ConsoleAppender.html#newBuilder--"><code>ConsoleAppender.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/SocketAppender.html#createAppender-java.lang.String-int-org.apache.logging.log4j.core.net.Protocol-org.apache.logging.log4j.core.net.ssl.SslConfiguration-int-int-boolean-java.lang.String-boolean-boolean-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.SocketAppender.createAppender(String, int, Protocol, SslConfiguration, int, int, boolean, String, boolean, boolean, Layout&lt;? extends Serializable&gt;, Filter, boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Deprecated in 2.7; use <a href="org/apache/logging/log4j/core/appender/SocketAppender.html#newBuilder--"><code>SocketAppender.newBuilder()</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/SyslogAppender.html#createAppender-java.lang.String-int-java.lang.String-org.apache.logging.log4j.core.net.ssl.SslConfiguration-int-int-boolean-java.lang.String-boolean-boolean-org.apache.logging.log4j.core.net.Facility-java.lang.String-int-boolean-java.lang.String-java.lang.String-java.lang.String-boolean-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.config.Configuration-java.nio.charset.Charset-java.lang.String-org.apache.logging.log4j.core.layout.LoggerFields:A-boolean-">org.apache.logging.log4j.core.appender.SyslogAppender.createAppender(String, int, String, SslConfiguration, int, int, boolean, String, boolean, boolean, Facility, String, int, boolean, String, String, String, boolean, String, String, String, String, String, String, String, Filter, Configuration, Charset, String, LoggerFields[], boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/SyslogAppender.html#newSyslogAppenderBuilder--"><code>SyslogAppender.newSyslogAppenderBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/jdbc/JdbcAppender.html#createAppender-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource-java.lang.String-java.lang.String-org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig:A-">org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender.createAppender(String, String, Filter, ConnectionSource, String, String, ColumnConfig[])</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/appender/db/jdbc/JdbcAppender.html#newBuilder--"><code>JdbcAppender.newBuilder()</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/nosql/NoSqlAppender.html#createAppender-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Filter-java.lang.String-org.apache.logging.log4j.core.appender.nosql.NoSqlProvider-">org.apache.logging.log4j.core.appender.nosql.NoSqlAppender.createAppender(String, String, Filter, String, NoSqlProvider&lt;?&gt;)</a>
<div class="block"><span class="deprecationComment">since 2.11.0; use <a href="org/apache/logging/log4j/core/appender/nosql/NoSqlAppender.Builder.html" title="class in org.apache.logging.log4j.core.appender.nosql"><code>NoSqlAppender.Builder</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/routing/RoutingAppender.html#createAppender-java.lang.String-java.lang.String-org.apache.logging.log4j.core.appender.routing.Routes-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.appender.rewrite.RewritePolicy-org.apache.logging.log4j.core.appender.routing.PurgePolicy-org.apache.logging.log4j.core.Filter-">org.apache.logging.log4j.core.appender.routing.RoutingAppender.createAppender(String, String, Routes, Configuration, RewritePolicy, PurgePolicy, Filter)</a>
<div class="block"><span class="deprecationComment">Since 2.7; use <a href="org/apache/logging/log4j/core/appender/routing/RoutingAppender.html#newBuilder--"><code>RoutingAppender.newBuilder()</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/SocketAppender.html#createAppender-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.net.ssl.SslConfiguration-int-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.SocketAppender.createAppender(String, String, String, SslConfiguration, int, String, String, String, String, String, Layout&lt;? extends Serializable&gt;, Filter, String, Configuration)</a>
<div class="block"><span class="deprecationComment">Deprecated in 2.5; use <a href="org/apache/logging/log4j/core/appender/SocketAppender.html#newBuilder--"><code>SocketAppender.newBuilder()</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/MemoryMappedFileAppender.html#createAppender-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.MemoryMappedFileAppender.createAppender(String, String, String, String, String, String, Layout&lt;? extends Serializable&gt;, Filter, String, String, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/MemoryMappedFileAppender.html#newBuilder--"><code>MemoryMappedFileAppender.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/RandomAccessFileAppender.html#createAppender-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.RandomAccessFileAppender.createAppender(String, String, String, String, String, String, Layout&lt;? extends Serializable&gt;, Filter, String, String, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/RandomAccessFileAppender.html#newBuilder--"><code>RandomAccessFileAppender.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/FileAppender.html#createAppender-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.FileAppender.createAppender(String, String, String, String, String, String, String, String, Layout&lt;? extends Serializable&gt;, Filter, String, String, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/FileAppender.html#newBuilder--"><code>FileAppender.newBuilder()</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/RollingFileAppender.html#createAppender-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy-org.apache.logging.log4j.core.appender.rolling.RolloverStrategy-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.RollingFileAppender.createAppender(String, String, String, String, String, String, String, TriggeringPolicy, RolloverStrategy, Layout&lt;? extends Serializable&gt;, Filter, String, String, String, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/RollingFileAppender.html#newBuilder--"><code>RollingFileAppender.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/RollingRandomAccessFileAppender.html#createAppender-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy-org.apache.logging.log4j.core.appender.rolling.RolloverStrategy-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender.createAppender(String, String, String, String, String, String, TriggeringPolicy, RolloverStrategy, Layout&lt;? extends Serializable&gt;, Filter, String, String, String, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/RollingRandomAccessFileAppender.html#newBuilder--"><code>RollingRandomAccessFileAppender.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/jdbc/ColumnConfig.html#createColumnConfig-org.apache.logging.log4j.core.config.Configuration-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig.createColumnConfig(Configuration, String, String, String, String, String, String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/appender/db/jdbc/ColumnConfig.html#newBuilder--"><code>ColumnConfig.newBuilder()</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.html#createEvent-java.lang.String-org.apache.logging.log4j.Marker-java.lang.String-org.apache.logging.log4j.Level-org.apache.logging.log4j.message.Message-java.lang.Throwable-org.apache.logging.log4j.core.impl.ThrowableProxy-java.util.Map-org.apache.logging.log4j.ThreadContext.ContextStack-java.lang.String-java.lang.StackTraceElement-long-">org.apache.logging.log4j.core.impl.Log4jLogEvent.createEvent(String, Marker, String, Level, Message, Throwable, ThrowableProxy, Map&lt;String, String&gt;, ThreadContext.ContextStack, String, StackTraceElement, long)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.Builder.html" title="class in org.apache.logging.log4j.core.impl"><code>Log4jLogEvent.Builder</code></a> instead. This method will be removed in an upcoming release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/KeyStoreConfiguration.html#createKeyStoreConfiguration-java.lang.String-char:A-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.KeyStoreConfiguration.createKeyStoreConfiguration(String, char[], String, String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/net/ssl/KeyStoreConfiguration.html#createKeyStoreConfiguration-java.lang.String-char:A-java.lang.String-java.lang.String-java.lang.String-java.lang.String-"><code>KeyStoreConfiguration.createKeyStoreConfiguration(String, char[], String, String, String, String)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/TrustStoreConfiguration.html#createKeyStoreConfiguration-java.lang.String-char:A-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.TrustStoreConfiguration.createKeyStoreConfiguration(String, char[], String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/TrustStoreConfiguration.html#createKeyStoreConfiguration-java.lang.String-char:A-java.lang.String-java.lang.String-java.lang.String-java.lang.String-"><code>TrustStoreConfiguration.createKeyStoreConfiguration(String, char[], String, String, String, String)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/KeyStoreConfiguration.html#createKeyStoreConfiguration-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.KeyStoreConfiguration.createKeyStoreConfiguration(String, String, String, String)</a>
<div class="block"><span class="deprecationComment">Use createKeyStoreConfiguration(String, char[], String, String)</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/TrustStoreConfiguration.html#createKeyStoreConfiguration-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.TrustStoreConfiguration.createKeyStoreConfiguration(String, String, String, String)</a>
<div class="block"><span class="deprecationComment">Use createKeyStoreConfiguration(String, char[], String, String)</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/SerializedLayout.html#createLayout--">org.apache.logging.log4j.core.layout.SerializedLayout.createLayout()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/XmlLayout.html#createLayout-boolean-boolean-boolean-boolean-java.nio.charset.Charset-boolean-">org.apache.logging.log4j.core.layout.XmlLayout.createLayout(boolean, boolean, boolean, boolean, Charset, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/XmlLayout.html#newBuilder--"><code>XmlLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/JsonLayout.html#createLayout-org.apache.logging.log4j.core.config.Configuration-boolean-boolean-boolean-boolean-boolean-boolean-java.lang.String-java.lang.String-java.nio.charset.Charset-boolean-">org.apache.logging.log4j.core.layout.JsonLayout.createLayout(Configuration, boolean, boolean, boolean, boolean, boolean, boolean, String, String, Charset, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/JsonLayout.html#newBuilder--"><code>JsonLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/YamlLayout.html#createLayout-org.apache.logging.log4j.core.config.Configuration-boolean-boolean-java.lang.String-java.lang.String-java.nio.charset.Charset-boolean-">org.apache.logging.log4j.core.layout.YamlLayout.createLayout(Configuration, boolean, boolean, String, String, Charset, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/YamlLayout.html#newBuilder--"><code>YamlLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/SyslogLayout.html#createLayout-org.apache.logging.log4j.core.net.Facility-boolean-java.lang.String-java.nio.charset.Charset-">org.apache.logging.log4j.core.layout.SyslogLayout.createLayout(Facility, boolean, String, Charset)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/SyslogLayout.html#newBuilder--"><code>SyslogLayout.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/GelfLayout.html#createLayout-java.lang.String-org.apache.logging.log4j.core.util.KeyValuePair:A-org.apache.logging.log4j.core.layout.GelfLayout.CompressionType-int-boolean-">org.apache.logging.log4j.core.layout.GelfLayout.createLayout(String, KeyValuePair[], GelfLayout.CompressionType, int, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/GelfLayout.html#newBuilder--"><code>GelfLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/PatternLayout.html#createLayout-java.lang.String-org.apache.logging.log4j.core.layout.PatternSelector-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.pattern.RegexReplacement-java.nio.charset.Charset-boolean-boolean-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.layout.PatternLayout.createLayout(String, PatternSelector, Configuration, RegexReplacement, Charset, boolean, boolean, String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/PatternLayout.html#newBuilder--"><code>PatternLayout.newBuilder()</code></a> instead. This will be private in a future version.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/config/LoggerConfig.html#createLogger-java.lang.String-org.apache.logging.log4j.Level-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.AppenderRef:A-org.apache.logging.log4j.core.config.Property:A-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.Filter-">org.apache.logging.log4j.core.config.LoggerConfig.createLogger(String, Level, String, String, AppenderRef[], Property[], Configuration, Filter)</a>
<div class="block"><span class="deprecationComment">Deprecated in 2.7; use <a href="org/apache/logging/log4j/core/config/LoggerConfig.html#createLogger-boolean-org.apache.logging.log4j.Level-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.AppenderRef:A-org.apache.logging.log4j.core.config.Property:A-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.Filter-"><code>LoggerConfig.createLogger(boolean, Level, String, String, AppenderRef[], Property[], Configuration, Filter)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/async/AsyncLoggerConfig.RootLogger.html#createLogger-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.AppenderRef:A-org.apache.logging.log4j.core.config.Property:A-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.Filter-">org.apache.logging.log4j.core.async.AsyncLoggerConfig.RootLogger.createLogger(String, String, String, AppenderRef[], Property[], Configuration, Filter)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/async/AsyncLoggerConfig.RootLogger.html#createLogger-java.lang.String-org.apache.logging.log4j.Level-java.lang.String-org.apache.logging.log4j.core.config.AppenderRef:A-org.apache.logging.log4j.core.config.Property:A-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.Filter-"><code>AsyncLoggerConfig.RootLogger.createLogger(String, Level, String, AppenderRef[], Property[], Configuration, Filter)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/async/AsyncLoggerConfig.html#createLogger-java.lang.String-java.lang.String-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.AppenderRef:A-org.apache.logging.log4j.core.config.Property:A-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.Filter-">org.apache.logging.log4j.core.async.AsyncLoggerConfig.createLogger(String, String, String, String, AppenderRef[], Property[], Configuration, Filter)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/async/AsyncLoggerConfig.html#createLogger-boolean-org.apache.logging.log4j.Level-java.lang.String-java.lang.String-org.apache.logging.log4j.core.config.AppenderRef:A-org.apache.logging.log4j.core.config.Property:A-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.Filter-"><code>AsyncLoggerConfig.createLogger(boolean, Level, String, String, AppenderRef[], Property[], Configuration, Filter)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/TimeBasedTriggeringPolicy.html#createPolicy-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.appender.rolling.TimeBasedTriggeringPolicy.createPolicy(String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/rolling/TimeBasedTriggeringPolicy.html#newBuilder--"><code>TimeBasedTriggeringPolicy.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/routing/Routes.html#createRoutes-java.lang.String-org.apache.logging.log4j.core.appender.routing.Route...-">org.apache.logging.log4j.core.appender.routing.Routes.createRoutes(String, Route...)</a>
<div class="block"><span class="deprecationComment">since 2.7; use <a href="org/apache/logging/log4j/core/appender/routing/Routes.html#newBuilder--"><code>Routes.newBuilder()</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/ScriptPatternSelector.html#createSelector-org.apache.logging.log4j.core.script.AbstractScript-org.apache.logging.log4j.core.layout.PatternMatch:A-java.lang.String-boolean-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.layout.ScriptPatternSelector.createSelector(AbstractScript, PatternMatch[], String, boolean, boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/ScriptPatternSelector.html#newBuilder--"><code>ScriptPatternSelector.newBuilder()</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/MarkerPatternSelector.html#createSelector-org.apache.logging.log4j.core.layout.PatternMatch:A-java.lang.String-boolean-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.layout.MarkerPatternSelector.createSelector(PatternMatch[], String, boolean, boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/MarkerPatternSelector.html#newBuilder--"><code>MarkerPatternSelector.newBuilder()</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/LevelPatternSelector.html#createSelector-org.apache.logging.log4j.core.layout.PatternMatch:A-java.lang.String-boolean-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.layout.LevelPatternSelector.createSelector(PatternMatch[], String, boolean, boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/LevelPatternSelector.html#newBuilder--"><code>LevelPatternSelector.newBuilder()</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/PatternLayout.html#createSerializer-org.apache.logging.log4j.core.config.Configuration-org.apache.logging.log4j.core.pattern.RegexReplacement-java.lang.String-java.lang.String-org.apache.logging.log4j.core.layout.PatternSelector-boolean-boolean-">org.apache.logging.log4j.core.layout.PatternLayout.createSerializer(Configuration, RegexReplacement, String, String, PatternSelector, boolean, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/PatternLayout.html#newSerializerBuilder--"><code>PatternLayout.newSerializerBuilder()</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/SocketAppender.html#createSocketManager-java.lang.String-org.apache.logging.log4j.core.net.Protocol-java.lang.String-int-int-org.apache.logging.log4j.core.net.ssl.SslConfiguration-int-boolean-org.apache.logging.log4j.core.Layout-int-">org.apache.logging.log4j.core.appender.SocketAppender.createSocketManager(String, Protocol, String, int, int, SslConfiguration, int, boolean, Layout&lt;? extends Serializable&gt;, int)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/SocketAppender.html#createSocketManager-java.lang.String-org.apache.logging.log4j.core.net.Protocol-java.lang.String-int-int-org.apache.logging.log4j.core.net.ssl.SslConfiguration-int-boolean-org.apache.logging.log4j.core.Layout-int-org.apache.logging.log4j.core.net.SocketOptions-"><code>SocketAppender.createSocketManager(String, Protocol, String, int, int, SslConfiguration, int, boolean, Layout, int, SocketOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.html#createStrategy-java.lang.String-java.lang.String-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.rolling.DirectWriteRolloverStrategy.createStrategy(String, String, Action[], boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Since 2.9 Usage of Builder API is preferable</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><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-">org.apache.logging.log4j.core.appender.rolling.DefaultRolloverStrategy.createStrategy(String, String, String, String, Action[], boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Since 2.9 Usage of Builder API is preferable</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Help.html#detailedSynopsis-java.util.Comparator-boolean-">org.apache.logging.log4j.core.tools.picocli.CommandLine.Help.detailedSynopsis(Comparator&lt;Field&gt;, boolean)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Help.html#detailedSynopsis-int-java.util.Comparator-boolean-"><code>CommandLine.Help.detailedSynopsis(int, Comparator, boolean)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/TextEncoderHelper.html#encodeText-java.nio.charset.CharsetEncoder-java.nio.CharBuffer-org.apache.logging.log4j.core.layout.ByteBufferDestination-">org.apache.logging.log4j.core.layout.TextEncoderHelper.encodeText(CharsetEncoder, CharBuffer, ByteBufferDestination)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/action/GzCompressAction.html#execute-java.io.File-java.io.File-boolean-">org.apache.logging.log4j.core.appender.rolling.action.GzCompressAction.execute(File, File, boolean)</a>
<div class="block"><span class="deprecationComment">In favor of <a href="org/apache/logging/log4j/core/appender/rolling/action/GzCompressAction.html#execute-java.io.File-java.io.File-boolean-int-"><code>GzCompressAction.execute(File, File, boolean, int)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#format-java.lang.Object-java.lang.StringBuilder-java.text.FieldPosition-">org.apache.logging.log4j.core.util.datetime.FastDatePrinter.format(Object, StringBuilder, FieldPosition)</a>
<div class="block"><span class="deprecationComment">Use {<a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#format-java.util.Date-"><code>FastDatePrinter.format(Date)</code></a>, {<a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#format-java.util.Calendar-"><code>FastDatePrinter.format(Calendar)</code></a>, {<a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#format-long-"><code>FastDatePrinter.format(long)</code></a>, or {<a href="org/apache/logging/log4j/core/util/datetime/FastDatePrinter.html#format-java.lang.Object-"><code>FastDatePrinter.format(Object)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/LogEvent.html#getContextMap--">org.apache.logging.log4j.core.LogEvent.getContextMap()</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/LogEvent.html#getContextData--"><code>LogEvent.getContextData()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/AbstractRolloverStrategy.html#getEligibleFiles-java.lang.String-java.lang.String-boolean-">org.apache.logging.log4j.core.appender.rolling.AbstractRolloverStrategy.getEligibleFiles(String, String, boolean)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/filter/CompositeFilter.html#getFilters--">org.apache.logging.log4j.core.filter.CompositeFilter.getFilters()</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/filter/CompositeFilter.html#getFiltersArray--"><code>CompositeFilter.getFiltersArray()</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.html#getJDBCDatabaseManager-java.lang.String-int-org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource-java.lang.String-org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig:A-">org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.getJDBCDatabaseManager(String, int, ConnectionSource, String, ColumnConfig[])</a>
<div class="block"><span class="deprecationComment">use
 <a href="org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.html#getManager-java.lang.String-int-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource-java.lang.String-org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig:A-org.apache.logging.log4j.core.appender.db.ColumnMapping:A-boolean-long-"><code>JdbcDatabaseManager.getManager(String, int, Layout, ConnectionSource, String, ColumnConfig[], ColumnMapping[], boolean, long)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.html#getManager-java.lang.String-int-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource-java.lang.String-org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig:A-org.apache.logging.log4j.core.appender.db.ColumnMapping:A-">org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.getManager(String, int, Layout&lt;? extends Serializable&gt;, ConnectionSource, String, ColumnConfig[], ColumnMapping[])</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.html#getManager-java.lang.String-int-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource-java.lang.String-org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig:A-org.apache.logging.log4j.core.appender.db.ColumnMapping:A-boolean-long-">org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.getManager(String, int, Layout&lt;? extends Serializable&gt;, ConnectionSource, String, ColumnConfig[], ColumnMapping[], boolean, long)</a>
<div class="block"><span class="deprecationComment">use
 <a href="org/apache/logging/log4j/core/appender/db/jdbc/JdbcDatabaseManager.html#getManager-java.lang.String-int-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource-java.lang.String-org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig:A-org.apache.logging.log4j.core.appender.db.ColumnMapping:A-boolean-long-"><code>JdbcDatabaseManager.getManager(String, int, Layout, ConnectionSource, String, ColumnConfig[], ColumnMapping[], boolean, long)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/filter/MapFilter.html#getMap--">org.apache.logging.log4j.core.filter.MapFilter.getMap()</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/filter/MapFilter.html#getStringMap--"><code>MapFilter.getStringMap()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/MimeMessageBuilder.html#getMimeMessage--">org.apache.logging.log4j.core.net.MimeMessageBuilder.getMimeMessage()</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/MimeMessageBuilder.html#build--"><code>MimeMessageBuilder.build()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/StoreConfiguration.html#getPassword--">org.apache.logging.log4j.core.net.ssl.StoreConfiguration.getPassword()</a>
<div class="block"><span class="deprecationComment">Use getPasswordAsCharArray()</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/config/LoggerConfig.html#getProperties--">org.apache.logging.log4j.core.config.LoggerConfig.getProperties()</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/config/LoggerConfig.html#getPropertyList--"><code>LoggerConfig.getPropertyList()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/SslSocketManager.html#getSocketManager-org.apache.logging.log4j.core.net.ssl.SslConfiguration-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-">org.apache.logging.log4j.core.net.SslSocketManager.getSocketManager(SslConfiguration, String, int, int, int, boolean, Layout&lt;? extends Serializable&gt;, int)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/SslSocketManager.html#getSocketManager-org.apache.logging.log4j.core.net.ssl.SslConfiguration-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-org.apache.logging.log4j.core.net.SocketOptions-"><code>SslSocketManager.getSocketManager(SslConfiguration, String, int, int, int, boolean, Layout, int, SocketOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/TcpSocketManager.html#getSocketManager-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-">org.apache.logging.log4j.core.net.TcpSocketManager.getSocketManager(String, int, int, int, boolean, Layout&lt;? extends Serializable&gt;, int)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/TcpSocketManager.html#getSocketManager-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-org.apache.logging.log4j.core.net.SocketOptions-"><code>TcpSocketManager.getSocketManager(String, int, int, int, boolean, Layout, int, SocketOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/util/WatchManager.html#getWatchers--">org.apache.logging.log4j.core.util.WatchManager.getWatchers()</a>
<div class="block"><span class="deprecationComment">use getConfigurationWatchers.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/config/LoggerConfig.html#includeLocation-java.lang.String-">org.apache.logging.log4j.core.config.LoggerConfig.includeLocation(String)</a>
<div class="block"><span class="deprecationComment">Please use <a href="org/apache/logging/log4j/core/config/LoggerConfig.html#includeLocation-java.lang.String-org.apache.logging.log4j.core.config.Configuration-"><code>LoggerConfig.includeLocation(String, Configuration)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/config/plugins/util/PluginManager.html#main-java.lang.String:A-">org.apache.logging.log4j.core.config.plugins.util.PluginManager.main(String[])</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/config/plugins/processor/PluginProcessor.html" title="class in org.apache.logging.log4j.core.config.plugins.processor"><code>PluginProcessor</code></a> instead. To do so,
             simply include <code>log4j-core</code> in your dependencies and make sure annotation processing is not
             disabled. By default, supported Java compilers will automatically use that plugin processor provided
             <code>log4j-core</code> is on the classpath.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractManager.html#release--">org.apache.logging.log4j.core.appender.AbstractManager.release()</a>
<div class="block"><span class="deprecationComment">In 2.7, use <a href="org/apache/logging/log4j/core/appender/AbstractManager.html#close--"><code>AbstractManager.close()</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.Builder.html#setContextMap-java.util.Map-">org.apache.logging.log4j.core.impl.Log4jLogEvent.Builder.setContextMap(Map&lt;String, String&gt;)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/lookup/MapLookup.html#setMainArguments-java.lang.String...-">org.apache.logging.log4j.core.lookup.MapLookup.setMainArguments(String...)</a>
<div class="block"><span class="deprecationComment">As of 2.4, use <a href="org/apache/logging/log4j/core/lookup/MainMapLookup.html#setMainArguments-java.lang.String...-"><code>MainMapLookup.setMainArguments(String[])</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/mom/JmsAppender.Builder.html#setPassword-java.lang.String-">org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder.setPassword(String)</a>
<div class="block"><span class="deprecationComment">Use setPassword(char[])</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/StoreConfiguration.html#setPassword-java.lang.String-">org.apache.logging.log4j.core.net.ssl.StoreConfiguration.setPassword(String)</a>
<div class="block"><span class="deprecationComment">Use getPasswordAsCharArray()</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/mom/JmsAppender.Builder.html#setUsername-java.lang.String-">org.apache.logging.log4j.core.appender.mom.JmsAppender.Builder.setUsername(String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/mom/JmsAppender.Builder.html#setUserName-java.lang.String-"><code>JmsAppender.Builder.setUserName(String)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Help.html#synopsis--">org.apache.logging.log4j.core.tools.picocli.CommandLine.Help.synopsis()</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Help.html#synopsis-int-"><code>CommandLine.Help.synopsis(int)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#withConfiguration-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.appender.AbstractAppender.Builder.withConfiguration(Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#setConfiguration-org.apache.logging.log4j.core.config.Configuration-"><code>AbstractAppender.Builder.setConfiguration(Configuration)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/filter/AbstractFilterable.Builder.html#withFilter-org.apache.logging.log4j.core.Filter-">org.apache.logging.log4j.core.filter.AbstractFilterable.Builder.withFilter(Filter)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/filter/AbstractFilterable.Builder.html#setFilter-org.apache.logging.log4j.core.Filter-"><code>AbstractFilterable.Builder.setFilter(Filter)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#withIgnoreExceptions-boolean-">org.apache.logging.log4j.core.appender.AbstractAppender.Builder.withIgnoreExceptions(boolean)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#setIgnoreExceptions-boolean-"><code>AbstractAppender.Builder.setIgnoreExceptions(boolean)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#withLayout-org.apache.logging.log4j.core.Layout-">org.apache.logging.log4j.core.appender.AbstractAppender.Builder.withLayout(Layout&lt;? extends Serializable&gt;)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#setLayout-org.apache.logging.log4j.core.Layout-"><code>AbstractAppender.Builder.setLayout(Layout)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#withName-java.lang.String-">org.apache.logging.log4j.core.appender.AbstractAppender.Builder.withName(String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/appender/AbstractAppender.Builder.html#setName-java.lang.String-"><code>AbstractAppender.Builder.setName(String)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseManager.html#write-org.apache.logging.log4j.core.LogEvent-">org.apache.logging.log4j.core.appender.db.AbstractDatabaseManager.write(LogEvent)</a>
<div class="block"><span class="deprecationComment">since 2.11.0 Use <a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseManager.html#write-org.apache.logging.log4j.core.LogEvent-java.io.Serializable-"><code>AbstractDatabaseManager.write(LogEvent, Serializable)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseManager.html#writeInternal-org.apache.logging.log4j.core.LogEvent-">org.apache.logging.log4j.core.appender.db.AbstractDatabaseManager.writeInternal(LogEvent)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseManager.html#writeInternal-org.apache.logging.log4j.core.LogEvent-java.io.Serializable-"><code>AbstractDatabaseManager.writeInternal(LogEvent, Serializable)</code></a>.</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="constructor">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Constructors table, listing deprecated constructors, and an explanation">
<caption><span>Deprecated Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractAppender.html#AbstractAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-">org.apache.logging.log4j.core.appender.AbstractAppender(String, Filter, Layout&lt;? extends Serializable&gt;)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/AbstractAppender.html#AbstractAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-boolean-org.apache.logging.log4j.core.config.Property:A-"><code>AbstractAppender.AbstractAppender(String, Filter, Layout, boolean, Property[])</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractAppender.html#AbstractAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-boolean-">org.apache.logging.log4j.core.appender.AbstractAppender(String, Filter, Layout&lt;? extends Serializable&gt;, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/AbstractAppender.html#AbstractAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-boolean-org.apache.logging.log4j.core.config.Property:A-"><code>AbstractAppender.AbstractAppender(String, Filter, Layout, boolean, Property[])</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.html#AbstractDatabaseAppender-java.lang.String-org.apache.logging.log4j.core.Filter-boolean-T-">org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender(String, Filter, boolean, T)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.html#AbstractDatabaseAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-boolean-org.apache.logging.log4j.core.config.Property:A-T-"><code>AbstractDatabaseAppender.AbstractDatabaseAppender(String, Filter, Layout, boolean, Property[], AbstractDatabaseManager)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.html#AbstractDatabaseAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-boolean-T-">org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender(String, Filter, Layout&lt;? extends Serializable&gt;, boolean, T)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.html#AbstractDatabaseAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-boolean-org.apache.logging.log4j.core.config.Property:A-T-"><code>AbstractDatabaseAppender.AbstractDatabaseAppender(String, Filter, Layout, boolean, Property[], AbstractDatabaseManager)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/AbstractKeyStoreConfiguration.html#AbstractKeyStoreConfiguration-java.lang.String-char:A-java.lang.String-">org.apache.logging.log4j.core.net.ssl.AbstractKeyStoreConfiguration(String, char[], String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/AbstractKeyStoreConfiguration.html#AbstractKeyStoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-java.lang.String-"><code>AbstractKeyStoreConfiguration.AbstractKeyStoreConfiguration(String, PasswordProvider, String)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/AbstractKeyStoreConfiguration.html#AbstractKeyStoreConfiguration-java.lang.String-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.AbstractKeyStoreConfiguration(String, String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/AbstractKeyStoreConfiguration.html#AbstractKeyStoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-java.lang.String-"><code>AbstractKeyStoreConfiguration.AbstractKeyStoreConfiguration(String, PasswordProvider, String)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/AbstractLayout.html#AbstractLayout-byte:A-byte:A-">org.apache.logging.log4j.core.layout.AbstractLayout(byte[], byte[])</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/AbstractLayout.html#AbstractLayout-org.apache.logging.log4j.core.config.Configuration-byte:A-byte:A-"><code>AbstractLayout.AbstractLayout(Configuration, byte[], byte[])</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractOutputStreamAppender.html#AbstractOutputStreamAppender-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-boolean-boolean-M-">org.apache.logging.log4j.core.appender.AbstractOutputStreamAppender(String, Layout&lt;? extends Serializable&gt;, Filter, boolean, boolean, M)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/AbstractOutputStreamAppender.html#AbstractOutputStreamAppender-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-boolean-boolean-org.apache.logging.log4j.core.config.Property:A-M-"><code>AbstractOutputStreamAppender.AbstractOutputStreamAppender(String, Layout, Filter, boolean, boolean, Property[], OutputStreamManager)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/AbstractWriterAppender.html#AbstractWriterAppender-java.lang.String-org.apache.logging.log4j.core.StringLayout-org.apache.logging.log4j.core.Filter-boolean-boolean-M-">org.apache.logging.log4j.core.appender.AbstractWriterAppender(String, StringLayout, Filter, boolean, boolean, M)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/appender/AbstractWriterAppender.html#AbstractWriterAppender-java.lang.String-org.apache.logging.log4j.core.StringLayout-org.apache.logging.log4j.core.Filter-boolean-boolean-org.apache.logging.log4j.core.config.Property:A-M-"><code>AbstractWriterAppender.AbstractWriterAppender(String, StringLayout, Filter, boolean, boolean, Property[], WriterManager)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><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-">org.apache.logging.log4j.core.appender.rolling.DefaultRolloverStrategy(int, int, boolean, int, StrSubstitutor, Action[], boolean)</a>
<div class="block"><span class="deprecationComment">Since 2.9 Added tempCompressedFilePatternString parameter</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/DirectWriteRolloverStrategy.html#DirectWriteRolloverStrategy-int-int-org.apache.logging.log4j.core.lookup.StrSubstitutor-org.apache.logging.log4j.core.appender.rolling.action.Action:A-boolean-">org.apache.logging.log4j.core.appender.rolling.DirectWriteRolloverStrategy(int, int, StrSubstitutor, Action[], boolean)</a>
<div class="block"><span class="deprecationComment">Since 2.9 Added tempCompressedFilePatternString parameter</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/FileManager.html#FileManager-org.apache.logging.log4j.core.LoggerContext-java.lang.String-java.io.OutputStream-boolean-boolean-boolean-java.lang.String-org.apache.logging.log4j.core.Layout-boolean-java.nio.ByteBuffer-">org.apache.logging.log4j.core.appender.FileManager(LoggerContext, String, OutputStream, boolean, boolean, boolean, String, Layout&lt;? extends Serializable&gt;, boolean, ByteBuffer)</a>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/FileManager.html#FileManager-java.lang.String-java.io.OutputStream-boolean-boolean-java.lang.String-org.apache.logging.log4j.core.Layout-boolean-java.nio.ByteBuffer-">org.apache.logging.log4j.core.appender.FileManager(String, OutputStream, boolean, boolean, String, Layout&lt;? extends Serializable&gt;, boolean, ByteBuffer)</a>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/FileManager.html#FileManager-java.lang.String-java.io.OutputStream-boolean-boolean-java.lang.String-org.apache.logging.log4j.core.Layout-int-boolean-">org.apache.logging.log4j.core.appender.FileManager(String, OutputStream, boolean, boolean, String, Layout&lt;? extends Serializable&gt;, int, boolean)</a>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/GelfLayout.html#GelfLayout-java.lang.String-org.apache.logging.log4j.core.util.KeyValuePair:A-org.apache.logging.log4j.core.layout.GelfLayout.CompressionType-int-boolean-">org.apache.logging.log4j.core.layout.GelfLayout(String, KeyValuePair[], GelfLayout.CompressionType, int, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/GelfLayout.html#newBuilder--"><code>GelfLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/action/GzCompressAction.html#GzCompressAction-java.io.File-java.io.File-boolean-">org.apache.logging.log4j.core.appender.rolling.action.GzCompressAction(File, File, boolean)</a>
<div class="block"><span class="deprecationComment">Prefer <a href="org/apache/logging/log4j/core/appender/rolling/action/GzCompressAction.html#GzCompressAction-java.io.File-java.io.File-boolean-int-"><code>GzCompressAction.GzCompressAction(File, File, boolean, int)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/mom/JmsAppender.html#JmsAppender-java.lang.String-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.Layout-boolean-org.apache.logging.log4j.core.appender.mom.JmsManager-">org.apache.logging.log4j.core.appender.mom.JmsAppender(String, Filter, Layout&lt;? extends Serializable&gt;, boolean, JmsManager)</a>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/JsonLayout.html#JsonLayout-org.apache.logging.log4j.core.config.Configuration-boolean-boolean-boolean-boolean-boolean-boolean-java.lang.String-java.lang.String-java.lang.String-java.nio.charset.Charset-boolean-">org.apache.logging.log4j.core.layout.JsonLayout(Configuration, boolean, boolean, boolean, boolean, boolean, boolean, String, String, String, Charset, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/JsonLayout.html#newBuilder--"><code>JsonLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/KeyStoreConfiguration.html#KeyStoreConfiguration-java.lang.String-char:A-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.KeyStoreConfiguration(String, char[], String, String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/net/ssl/KeyStoreConfiguration.html#KeyStoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-java.lang.String-java.lang.String-"><code>KeyStoreConfiguration.KeyStoreConfiguration(String, PasswordProvider, String, String)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/KeyStoreConfiguration.html#KeyStoreConfiguration-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.KeyStoreConfiguration(String, String, String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/KeyStoreConfiguration.html#KeyStoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-java.lang.String-java.lang.String-"><code>KeyStoreConfiguration.KeyStoreConfiguration(String, PasswordProvider, String, String)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/LevelPatternSelector.html#LevelPatternSelector-org.apache.logging.log4j.core.layout.PatternMatch:A-java.lang.String-boolean-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.layout.LevelPatternSelector(PatternMatch[], String, boolean, boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/LevelPatternSelector.html#newBuilder--"><code>LevelPatternSelector.newBuilder()</code></a> instead. This will be private in a future version.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.html#Log4jLogEvent-long-">org.apache.logging.log4j.core.impl.Log4jLogEvent(long)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.Builder.html" title="class in org.apache.logging.log4j.core.impl"><code>Log4jLogEvent.Builder</code></a> instead. This constructor will be removed in an upcoming release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.html#Log4jLogEvent-java.lang.String-org.apache.logging.log4j.Marker-java.lang.String-org.apache.logging.log4j.Level-org.apache.logging.log4j.message.Message-java.lang.Throwable-">org.apache.logging.log4j.core.impl.Log4jLogEvent(String, Marker, String, Level, Message, Throwable)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.Builder.html" title="class in org.apache.logging.log4j.core.impl"><code>Log4jLogEvent.Builder</code></a> instead. This constructor will be removed in an upcoming release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.html#Log4jLogEvent-java.lang.String-org.apache.logging.log4j.Marker-java.lang.String-org.apache.logging.log4j.Level-org.apache.logging.log4j.message.Message-java.lang.Throwable-java.util.Map-org.apache.logging.log4j.ThreadContext.ContextStack-java.lang.String-java.lang.StackTraceElement-long-">org.apache.logging.log4j.core.impl.Log4jLogEvent(String, Marker, String, Level, Message, Throwable, Map&lt;String, String&gt;, ThreadContext.ContextStack, String, StackTraceElement, long)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/logging/log4j/core/impl/Log4jLogEvent.Builder.html" title="class in org.apache.logging.log4j.core.impl"><code>Log4jLogEvent.Builder</code></a> instead. This constructor will be removed in an upcoming release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/MarkerPatternSelector.html#MarkerPatternSelector-org.apache.logging.log4j.core.layout.PatternMatch:A-java.lang.String-boolean-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.layout.MarkerPatternSelector(PatternMatch[], String, boolean, boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/MarkerPatternSelector.html#newBuilder--"><code>MarkerPatternSelector.newBuilder()</code></a> instead. This will be private in a future version.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/OutputStreamManager.html#OutputStreamManager-java.io.OutputStream-java.lang.String-org.apache.logging.log4j.core.Layout-boolean-java.nio.ByteBuffer-">org.apache.logging.log4j.core.appender.OutputStreamManager(OutputStream, String, Layout&lt;?&gt;, boolean, ByteBuffer)</a>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/RollingFileManager.html#RollingFileManager-org.apache.logging.log4j.core.LoggerContext-java.lang.String-java.lang.String-java.io.OutputStream-boolean-boolean-long-long-org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy-org.apache.logging.log4j.core.appender.rolling.RolloverStrategy-java.lang.String-org.apache.logging.log4j.core.Layout-boolean-java.nio.ByteBuffer-">org.apache.logging.log4j.core.appender.rolling.RollingFileManager(LoggerContext, String, String, OutputStream, boolean, boolean, long, long, TriggeringPolicy, RolloverStrategy, String, Layout&lt;? extends Serializable&gt;, boolean, ByteBuffer)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/RollingFileManager.html#RollingFileManager-java.lang.String-java.lang.String-java.io.OutputStream-boolean-long-long-org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy-org.apache.logging.log4j.core.appender.rolling.RolloverStrategy-java.lang.String-org.apache.logging.log4j.core.Layout-boolean-java.nio.ByteBuffer-">org.apache.logging.log4j.core.appender.rolling.RollingFileManager(String, String, OutputStream, boolean, long, long, TriggeringPolicy, RolloverStrategy, String, Layout&lt;? extends Serializable&gt;, boolean, ByteBuffer)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/RollingFileManager.html#RollingFileManager-java.lang.String-java.lang.String-java.io.OutputStream-boolean-long-long-org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy-org.apache.logging.log4j.core.appender.rolling.RolloverStrategy-java.lang.String-org.apache.logging.log4j.core.Layout-int-boolean-">org.apache.logging.log4j.core.appender.rolling.RollingFileManager(String, String, OutputStream, boolean, long, long, TriggeringPolicy, RolloverStrategy, String, Layout&lt;? extends Serializable&gt;, int, boolean)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager.html#RollingRandomAccessFileManager-org.apache.logging.log4j.core.LoggerContext-java.io.RandomAccessFile-java.lang.String-java.lang.String-java.io.OutputStream-boolean-boolean-int-long-long-org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy-org.apache.logging.log4j.core.appender.rolling.RolloverStrategy-java.lang.String-org.apache.logging.log4j.core.Layout-boolean-">org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager(LoggerContext, RandomAccessFile, String, String, OutputStream, boolean, boolean, int, long, long, TriggeringPolicy, RolloverStrategy, String, Layout&lt;? extends Serializable&gt;, boolean)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/ScriptPatternSelector.html#ScriptPatternSelector-org.apache.logging.log4j.core.script.AbstractScript-org.apache.logging.log4j.core.layout.PatternMatch:A-java.lang.String-boolean-boolean-boolean-org.apache.logging.log4j.core.config.Configuration-">org.apache.logging.log4j.core.layout.ScriptPatternSelector(AbstractScript, PatternMatch[], String, boolean, boolean, boolean, Configuration)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/ScriptPatternSelector.html#newBuilder--"><code>ScriptPatternSelector.newBuilder()</code></a> instead. This will be private in a future version.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/SocketAppender.html#SocketAppender-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.net.AbstractSocketManager-boolean-boolean-org.apache.logging.log4j.core.net.Advertiser-">org.apache.logging.log4j.core.appender.SocketAppender(String, Layout&lt;? extends Serializable&gt;, Filter, AbstractSocketManager, boolean, boolean, Advertiser)</a>
<div class="block"><span class="deprecationComment"><a href="org/apache/logging/log4j/core/appender/SocketAppender.html#SocketAppender-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-org.apache.logging.log4j.core.net.AbstractSocketManager-boolean-boolean-org.apache.logging.log4j.core.net.Advertiser-org.apache.logging.log4j.core.config.Property:A-"><code>SocketAppender.SocketAppender(String, Layout, Filter, AbstractSocketManager, boolean, boolean, Advertiser, Property[])</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/SslSocketManager.html#SslSocketManager-java.lang.String-java.io.OutputStream-java.net.Socket-org.apache.logging.log4j.core.net.ssl.SslConfiguration-java.net.InetAddress-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-">org.apache.logging.log4j.core.net.SslSocketManager(String, OutputStream, Socket, SslConfiguration, InetAddress, String, int, int, int, boolean, Layout&lt;? extends Serializable&gt;, int)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/SslSocketManager.html#SslSocketManager-java.lang.String-java.io.OutputStream-java.net.Socket-org.apache.logging.log4j.core.net.ssl.SslConfiguration-java.net.InetAddress-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-org.apache.logging.log4j.core.net.SocketOptions-"><code>SslSocketManager.SslSocketManager(String, OutputStream, Socket, SslConfiguration, InetAddress, String, int, int, int, boolean, Layout, int, SocketOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/StoreConfiguration.html#StoreConfiguration-java.lang.String-char:A-">org.apache.logging.log4j.core.net.ssl.StoreConfiguration(String, char[])</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/StoreConfiguration.html#StoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-"><code>StoreConfiguration.StoreConfiguration(String, PasswordProvider)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/StoreConfiguration.html#StoreConfiguration-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.StoreConfiguration(String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/StoreConfiguration.html#StoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-"><code>StoreConfiguration.StoreConfiguration(String, PasswordProvider)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/appender/SyslogAppender.html#SyslogAppender-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-boolean-boolean-org.apache.logging.log4j.core.net.AbstractSocketManager-org.apache.logging.log4j.core.net.Advertiser-">org.apache.logging.log4j.core.appender.SyslogAppender(String, Layout&lt;? extends Serializable&gt;, Filter, boolean, boolean, AbstractSocketManager, Advertiser)</a>
<div class="block"><span class="deprecationComment">Use
 <a href="org/apache/logging/log4j/core/appender/SyslogAppender.html#SyslogAppender-java.lang.String-org.apache.logging.log4j.core.Layout-org.apache.logging.log4j.core.Filter-boolean-boolean-org.apache.logging.log4j.core.net.AbstractSocketManager-org.apache.logging.log4j.core.net.Advertiser-org.apache.logging.log4j.core.config.Property:A-"><code>SyslogAppender.SyslogAppender(String, Layout, Filter, boolean, boolean, AbstractSocketManager, Advertiser, Property[])</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/TcpSocketManager.html#TcpSocketManager-java.lang.String-java.io.OutputStream-java.net.Socket-java.net.InetAddress-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-">org.apache.logging.log4j.core.net.TcpSocketManager(String, OutputStream, Socket, InetAddress, String, int, int, int, boolean, Layout&lt;? extends Serializable&gt;, int)</a>
<div class="block"><span class="deprecationComment">Use
             <a href="org/apache/logging/log4j/core/net/TcpSocketManager.html#TcpSocketManager-java.lang.String-java.io.OutputStream-java.net.Socket-java.net.InetAddress-java.lang.String-int-int-int-boolean-org.apache.logging.log4j.core.Layout-int-org.apache.logging.log4j.core.net.SocketOptions-"><code>TcpSocketManager.TcpSocketManager(String, OutputStream, Socket, InetAddress, String, int, int, int, boolean, Layout, int, SocketOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/pattern/ThrowablePatternConverter.html#ThrowablePatternConverter-java.lang.String-java.lang.String-java.lang.String:A-">org.apache.logging.log4j.core.pattern.ThrowablePatternConverter(String, String, String[])</a>
<div class="block"><span class="deprecationComment">Use ThrowablePatternConverter(String name, String stule, String[] options, Configuration config)</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/TrustStoreConfiguration.html#TrustStoreConfiguration-java.lang.String-char:A-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.TrustStoreConfiguration(String, char[], String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/TrustStoreConfiguration.html#TrustStoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-java.lang.String-java.lang.String-"><code>TrustStoreConfiguration.TrustStoreConfiguration(String, PasswordProvider, String, String)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/net/ssl/TrustStoreConfiguration.html#TrustStoreConfiguration-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">org.apache.logging.log4j.core.net.ssl.TrustStoreConfiguration(String, String, String, String)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/net/ssl/TrustStoreConfiguration.html#TrustStoreConfiguration-java.lang.String-org.apache.logging.log4j.core.net.ssl.PasswordProvider-java.lang.String-java.lang.String-"><code>TrustStoreConfiguration.TrustStoreConfiguration(String, PasswordProvider, String, String)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/XmlLayout.html#XmlLayout-boolean-boolean-boolean-boolean-java.nio.charset.Charset-boolean-">org.apache.logging.log4j.core.layout.XmlLayout(boolean, boolean, boolean, boolean, Charset, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/XmlLayout.html#newBuilder--"><code>XmlLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/layout/YamlLayout.html#YamlLayout-org.apache.logging.log4j.core.config.Configuration-boolean-boolean-boolean-boolean-boolean-java.lang.String-java.lang.String-java.nio.charset.Charset-boolean-">org.apache.logging.log4j.core.layout.YamlLayout(Configuration, boolean, boolean, boolean, boolean, boolean, String, String, Charset, boolean)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/layout/YamlLayout.html#newBuilder--"><code>YamlLayout.newBuilder()</code></a> instead</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="annotation.type.member">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Annotation Type Elements table, listing deprecated annotation type elements, and an explanation">
<caption><span>Deprecated Annotation Type Elements</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Annotation Type Element and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Option.html#help--">org.apache.logging.log4j.core.tools.picocli.CommandLine.Option.help</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Option.html#usageHelp--"><code>CommandLine.Option.usageHelp()</code></a> and <a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.Option.html#versionHelp--"><code>CommandLine.Option.versionHelp()</code></a> instead. See <a href="org/apache/logging/log4j/core/tools/picocli/CommandLine.html#printHelpIfRequested-java.util.List-java.io.PrintStream-org.apache.logging.log4j.core.tools.picocli.CommandLine.Help.Ansi-"><code>CommandLine.printHelpIfRequested(List, PrintStream, CommandLine.Help.Ansi)</code></a></span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= 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>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</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>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.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>
<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>
