| <!DOCTYPE html> |
| |
| |
| <!-- |
| | Generated by Apache Maven Doxia Site Renderer 1.11.1 from target/generated-sources/site/asciidoc/_release-notes/_2.17.2.adoc at 2024-03-06 |
| | Rendered using Apache Maven Fluido Skin 1.11.2 |
| --> |
| <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> |
| <head> |
| <meta charset="UTF-8" /> |
| <meta name="viewport" content="width=device-width, initial-scale=1" /> |
| <meta name="generator" content="Apache Maven Doxia Site Renderer 1.11.1" /> |
| <title>Log4j – </title> |
| <link rel="stylesheet" href="../css/apache-maven-fluido-1.11.2.min.css" /> |
| <link rel="stylesheet" href="../css/site.css" /> |
| <link rel="stylesheet" href="../css/print.css" media="print" /> |
| <script src="../js/apache-maven-fluido-1.11.2.min.js"></script> |
| </head> |
| <body class="topBarDisabled"> |
| <div class="container-fluid"> |
| <header> |
| <div id="banner"> |
| <div class="pull-left"><a href="../../.." id="bannerLeft"><img src="../images/ls-logo.jpg" alt="" style="" /></a></div> |
| <div class="pull-right"><a href=".././" id="bannerRight"><img src="../images/logo.png" alt="" style="" /></a></div> |
| <div class="clear"><hr/></div> |
| </div> |
| |
| <div id="breadcrumbs"> |
| <ul class="breadcrumb"> |
| <li id="publishDate">Last Published: 2024-03-06<span class="divider">|</span> |
| </li> |
| <li id="projectVersion">Version: 2.23.1</li> |
| <li class="pull-right"><span class="divider">|</span> |
| <a href="https://github.com/apache/logging-log4j2" class="externalLink" title="GitHub">GitHub</a></li> |
| <li class="pull-right"><span class="divider">|</span> |
| <a href="../../../" title="Logging Services">Logging Services</a></li> |
| <li class="pull-right"><span class="divider">|</span> |
| <a href="https://www.apache.org/" class="externalLink" title="Apache">Apache</a></li> |
| <li class="pull-right"><a href="https://cwiki.apache.org/confluence/display/LOGGING/Log4j" class="externalLink" title="Logging Wiki">Logging Wiki</a></li> |
| </ul> |
| </div> |
| </header> |
| <div class="row-fluid"> |
| <header id="leftColumn" class="span2"> |
| <nav class="well sidebar-nav"> |
| <ul class="nav nav-list"> |
| <li class="nav-header"><img class="imageLink" src="../img/glyphicons/home.png" alt="Apache Log4j™ 2" style="border: 0;" /> Apache Log4j™ 2</li> |
| <li><a href="../index.html" title="About"><span class="none"></span>About</a></li> |
| <li><a href="../download.html" title="Download"><span class="none"></span>Download</a></li> |
| <li><a href="../support.html" title="Support"><span class="none"></span>Support</a></li> |
| <li><a href="../maven-artifacts.html" title="Maven, Ivy, Gradle Artifacts"><span class="icon-chevron-right"></span>Maven, Ivy, Gradle Artifacts</a></li> |
| <li><a href="../release-notes.html" title="Release Notes"><span class="none"></span>Release Notes</a></li> |
| <li><a href="../faq.html" title="FAQ"><span class="none"></span>FAQ</a></li> |
| <li><a href="../performance.html" title="Performance"><span class="icon-chevron-right"></span>Performance</a></li> |
| <li><a href="../articles.html" title="Articles and Tutorials"><span class="none"></span>Articles and Tutorials</a></li> |
| <li><a href="../security.html" title="Security"><span class="icon-chevron-right"></span>Security</a></li> |
| <li class="nav-header"><img class="imageLink" src="../img/glyphicons/book.png" alt="Manual" style="border: 0;" /> Manual</li> |
| <li><a href="../manual/index.html" title="Introduction"><span class="none"></span>Introduction</a></li> |
| <li><a href="../manual/architecture.html" title="Architecture"><span class="none"></span>Architecture</a></li> |
| <li><a href="../manual/api-separation.html" title="API Separation"><span class="none"></span>API Separation</a></li> |
| <li><a href="../manual/migration.html" title="Log4j 1.x Migration"><span class="icon-chevron-right"></span>Log4j 1.x Migration</a></li> |
| <li><a href="../manual/api.html" title="Java API"><span class="icon-chevron-right"></span>Java API</a></li> |
| <li><a href="../../kotlin" title="Kotlin API"><span class="none"></span>Kotlin API</a></li> |
| <li><a href="../../scala" title="Scala API"><span class="none"></span>Scala API</a></li> |
| <li><a href="../manual/configuration.html" title="Configuration"><span class="icon-chevron-right"></span>Configuration</a></li> |
| <li><a href="../manual/usage.html" title="Usage"><span class="icon-chevron-right"></span>Usage</a></li> |
| <li><a href="../manual/webapp.html" title="Web Applications and JSPs"><span class="icon-chevron-right"></span>Web Applications and JSPs</a></li> |
| <li><a href="../manual/lookups.html" title="Lookups"><span class="icon-chevron-right"></span>Lookups</a></li> |
| <li><a href="../manual/appenders.html" title="Appenders"><span class="icon-chevron-right"></span>Appenders</a></li> |
| <li><a href="../manual/layouts.html" title="Layouts"><span class="icon-chevron-right"></span>Layouts</a></li> |
| <li><a href="../manual/filters.html" title="Filters"><span class="icon-chevron-right"></span>Filters</a></li> |
| <li><a href="../manual/async.html" title="Async Loggers"><span class="icon-chevron-right"></span>Async Loggers</a></li> |
| <li><a href="../manual/garbagefree.html" title="Garbage-free Logging"><span class="icon-chevron-right"></span>Garbage-free Logging</a></li> |
| <li><a href="../manual/jmx.html" title="JMX"><span class="none"></span>JMX</a></li> |
| <li><a href="../manual/logsep.html" title="Logging Separation"><span class="none"></span>Logging Separation</a></li> |
| <li><a href="../manual/extending.html" title="Extending Log4j"><span class="icon-chevron-right"></span>Extending Log4j</a></li> |
| <li><a href="../manual/plugins.html" title="Plugins"><span class="icon-chevron-right"></span>Plugins</a></li> |
| <li><a href="../manual/customconfig.html" title="Programmatic Log4j Configuration"><span class="icon-chevron-right"></span>Programmatic Log4j Configuration</a></li> |
| <li><a href="../manual/customloglevels.html" title="Custom Log Levels"><span class="icon-chevron-right"></span>Custom Log Levels</a></li> |
| <li class="nav-header"><img class="imageLink" src="../img/glyphicons/pencil.png" alt="For Contributors" style="border: 0;" /> For Contributors</li> |
| <li><a href="../guidelines.html" title="Guidelines"><span class="none"></span>Guidelines</a></li> |
| <li><a href="../javastyle.html" title="Style Guide"><span class="none"></span>Style Guide</a></li> |
| <li class="nav-header"><img class="imageLink" src="../img/glyphicons/cog.png" alt="Components" style="border: 0;" /> Components</li> |
| <li><a href="../log4j-api.html" title="API"><span class="none"></span>API</a></li> |
| <li><a href="../log4j-jcl.html" title="Commons Logging Bridge"><span class="none"></span>Commons Logging Bridge</a></li> |
| <li><a href="../log4j-1.2-api.html" title="Log4j 1.2 API"><span class="none"></span>Log4j 1.2 API</a></li> |
| <li><a href="../log4j-slf4j-impl.html" title="SLF4J Binding"><span class="none"></span>SLF4J Binding</a></li> |
| <li><a href="../log4j-jul.html" title="JUL Adapter"><span class="none"></span>JUL Adapter</a></li> |
| <li><a href="../log4j-jpl.html" title="JDK Platform Logger"><span class="none"></span>JDK Platform Logger</a></li> |
| <li><a href="../log4j-to-slf4j.html" title="Log4j 2 to SLF4J Adapter"><span class="none"></span>Log4j 2 to SLF4J Adapter</a></li> |
| <li><a href="../log4j-flume-ng.html" title="Apache Flume Appender"><span class="none"></span>Apache Flume Appender</a></li> |
| <li><a href="../log4j-taglib.html" title="Log4j Tag Library"><span class="none"></span>Log4j Tag Library</a></li> |
| <li><a href="../log4j-jmx-gui.html" title="Log4j JMX GUI"><span class="none"></span>Log4j JMX GUI</a></li> |
| <li><a href="../log4j-web.html" title="Log4j Web Application Support"><span class="none"></span>Log4j Web Application Support</a></li> |
| <li><a href="../log4j-jakarta-web.html" title="Log4j Jakarta Web Application Support"><span class="none"></span>Log4j Jakarta Web Application Support</a></li> |
| <li><a href="../log4j-appserver.html" title="Log4j Application Server Integration"><span class="none"></span>Log4j Application Server Integration</a></li> |
| <li><a href="../log4j-couchdb.html" title="Log4j CouchDB appender"><span class="none"></span>Log4j CouchDB appender</a></li> |
| <li><a href="../log4j-mongodb3.html" title="Log4j MongoDB3 appender"><span class="none"></span>Log4j MongoDB3 appender</a></li> |
| <li><a href="../log4j-mongodb4.html" title="Log4j MongoDB4 appender"><span class="none"></span>Log4j MongoDB4 appender</a></li> |
| <li><a href="../log4j-cassandra.html" title="Log4j Cassandra appender"><span class="none"></span>Log4j Cassandra appender</a></li> |
| <li><a href="../log4j-iostreams.html" title="Log4j IO Streams"><span class="none"></span>Log4j IO Streams</a></li> |
| <li><a href="../log4j-docker.html" title="Log4j Docker Support"><span class="none"></span>Log4j Docker Support</a></li> |
| <li><a href="../log4j-kubernetes.html" title="Log4j Kubernetes Support"><span class="none"></span>Log4j Kubernetes Support</a></li> |
| <li><a href="../log4j-spring-boot.html" title="Log4j Spring Boot"><span class="none"></span>Log4j Spring Boot</a></li> |
| <li><a href="../log4j-spring-cloud-config-client.html" title="Log4j Spring Cloud Config Client"><span class="none"></span>Log4j Spring Cloud Config Client</a></li> |
| <li class="nav-header"><img class="imageLink" src="../img/glyphicons/tag.png" alt="Related Projects" style="border: 0;" /> Related Projects</li> |
| <li><a href="../../../chainsaw/2.x/index.html" title="Chainsaw"><span class="none"></span>Chainsaw</a></li> |
| <li><a href="../../../log4cxx/latest_stable/index.html" title="Log4Cxx"><span class="none"></span>Log4Cxx</a></li> |
| <li><a href="../../../log4j-audit/latest/index.html" title="Log4j Audit"><span class="none"></span>Log4j Audit</a></li> |
| <li><a href="../../kotlin" title="Log4j Kotlin"><span class="none"></span>Log4j Kotlin</a></li> |
| <li><a href="../../scala" title="Log4j Scala"><span class="none"></span>Log4j Scala</a></li> |
| <li><a href="../../transform" title="Log4j Transform"><span class="none"></span>Log4j Transform</a></li> |
| <li><a href="../../../log4net/index.html" title="Log4Net"><span class="none"></span>Log4Net</a></li> |
| <li class="nav-header"><img class="imageLink" src="../img/glyphicons/link.png" alt="Legacy Sites" style="border: 0;" /> Legacy Sites</li> |
| <li><a href="../../log4j-2.12.4/" title="Log4j 2.12.4 - Java 7"><span class="none"></span>Log4j 2.12.4 - Java 7</a></li> |
| <li><a href="../../log4j-2.3.2/" title="Log4j 2.3.2 - Java 6"><span class="none"></span>Log4j 2.3.2 - Java 6</a></li> |
| <li><a href="../../1.2/" title="Log4j 1.2 - End of Life"><span class="none"></span>Log4j 1.2 - End of Life</a></li> |
| <li class="nav-header"><img class="imageLink" src="../img/glyphicons/info.png" alt="Project Information" style="border: 0;" /> Project Information</li> |
| <li><a href="../team.html" title="Project Team"><span class="none"></span>Project Team</a></li> |
| <li><a href="https://www.apache.org/licenses/LICENSE-2.0" class="externalLink" title="Project License"><span class="none"></span>Project License</a></li> |
| <li><a href="https://github.com/apache/logging-log4j2" class="externalLink" title="Source Repository"><span class="none"></span>Source Repository</a></li> |
| <li><a href="../runtime-dependencies.html" title="Runtime Dependencies"><span class="none"></span>Runtime Dependencies</a></li> |
| <li><a href="../javadoc.html" title="Javadoc"><span class="none"></span>Javadoc</a></li> |
| <li><a href="../thanks.html" title="Thanks"><span class="none"></span>Thanks</a></li> |
| </ul> |
| </nav> |
| <div class="well sidebar-nav"> |
| <div id="poweredBy"> |
| <div class="clear"></div> |
| <div class="clear"></div> |
| <div class="clear"></div> |
| <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="../images/logos/maven-feather.png" /></a> |
| </div> |
| </div> |
| </header> |
| <main id="bodyColumn" class="span10" > |
| <div class="sect1"> |
| <h2 id="release-notes-2-17-2">2.17.2</h2> |
| <div class="sectionbody"> |
| <div class="dlist"> |
| <dl> |
| <dt class="hdlist1">Release date</dt> |
| <dd> |
| <p>2022-02-23</p> |
| </dd> |
| </dl> |
| </div> |
| <div class="paragraph"> |
| <p>This release contains the changes noted below:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Over 50 improvements and fixes to the Log4j 1.x support. |
| Continued testing has shown it is a suitable replacement for Log4j 1.x in most cases.</p> |
| </li> |
| <li> |
| <p>Scripting now requires a system property be specified naming the languages the user wishes to allow. |
| The scripting engine will not load if the property isn’t set.</p> |
| </li> |
| <li> |
| <p>By default, the only remote protocol allowed for loading configuration files is HTTPS. |
| Users can specify a system property to allow others or prevent remote loading entirely.</p> |
| </li> |
| <li> |
| <p>Variable resolution has been modified so that only properties defined as properties in the configuration file can be recursive. |
| All other Lookups are now non-recursive. |
| This addresses issues users were having resolving lookups specified in property definitions for use in the <code>RoutingAppender</code> and <code>RollingFileAppender</code> due to restrictions put in place in 2.17.1.</p> |
| </li> |
| <li> |
| <p>Many other fixes and improvements.</p> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>Due to a break in compatibility in the SLF4J binding, Log4j now ships with two versions of the SLF4J to Log4j adapters. |
| <code>log4j-slf4j-impl</code> should be used with SLF4J 1.7.x and earlier and <code>log4j-slf4j18-impl</code> should be used with SLF4J 1.8.x and later. |
| SLF4J-2.0.0 alpha releases are not fully supported. |
| See <a href="https://issues.apache.org/jira/browse/LOG4J2-2975">LOG4J2-2975</a> and <a href="https://jira.qos.ch/browse/SLF4J-511">SLF4J-511</a>.</p> |
| </div> |
| <div class="paragraph"> |
| <p>The Log4j 2.17.2 API, as well as many core components, maintains binary compatibility with previous releases.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Apache Log4j 2.17.2 requires a minimum of Java 8 to build and run. |
| Log4j 2.12.4 is the last release to support Java 7. |
| Log4j 2.3.2 is the last release to support Java 6. |
| Java 6 and Java 7 are no longer supported by the Log4j team.</p> |
| </div> |
| <div class="paragraph"> |
| <p>For complete information on Apache Log4j 2, including instructions on how to submit bug reports, patches, or suggestions for improvement, see <a href="http://logging.apache.org/log4j/2.x/">the Apache Log4j 2 website</a>.</p> |
| </div> |
| <div class="sect2"> |
| <h3 id="release-notes-2-17-2-added">Added</h3> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Add Configurator.setLevel(Logger, Level), setLevel(String, String), and setLevel(Class, Level).</p> |
| </li> |
| <li> |
| <p>Add org.apache.logging.log4j.core.appender.AsyncAppender.getAppenders() to more easily port from org.apache.log4j.AsyncAppender.getAllAppenders().</p> |
| </li> |
| <li> |
| <p>Require log4j2.Script.enableLanguages to be specified to enable scripting for specific languages. (<a href="https://issues.apache.org/jira/browse/LOG4J2-2486">LOG4J2-2486</a>)</p> |
| </li> |
| <li> |
| <p>Add the log4j-to-jul JDK Logging Bridge (<a href="https://issues.apache.org/jira/browse/LOG4J2-3282">LOG4J2-3282</a>)</p> |
| </li> |
| <li> |
| <p>Limit loading of configuration via a url to https by default. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3297">LOG4J2-3297</a>)</p> |
| </li> |
| <li> |
| <p>Add TB support to FileSize. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3303">LOG4J2-3303</a>)</p> |
| </li> |
| <li> |
| <p>Add shorthand syntax for properties configuration format for specifying a logger level and appender refs. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3341">LOG4J2-3341</a>)</p> |
| </li> |
| <li> |
| <p>Add optional additional fields to NoSQLAppender. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3391">LOG4J2-3391</a>)</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="release-notes-2-17-2-changed">Changed</h3> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Bump Jackson from 2.12.4 to 2.13.1.</p> |
| </li> |
| <li> |
| <p>Bump Mockito from 3.11.2 to 4.2.0.</p> |
| </li> |
| <li> |
| <p>Bump Woodstox 6.2.6 to 6.2.8.</p> |
| </li> |
| <li> |
| <p>Bump awaitility from 4.0.3 to 4.1.1 #663.</p> |
| </li> |
| <li> |
| <p>Bump de.flapdoodle.embed:de.flapdoodle.embed.mongo from 3.0.0 to 3.4.1. Update tests for binary incompatibilities in APIs.</p> |
| </li> |
| <li> |
| <p>Bump maven-compiler-plugin from 3.8.1 to 3.9.0.</p> |
| </li> |
| <li> |
| <p>Bump mongodb3.version from 3.12.4 to 3.12.10 #605.</p> |
| </li> |
| <li> |
| <p>Bump net.javacrumbs.json-unit:json-unit from 2.27.0 to 2.28.0.</p> |
| </li> |
| <li> |
| <p>Bump org.apache.activemq:activemq-broker from 5.16.3 to 5.16.4.</p> |
| </li> |
| <li> |
| <p>Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.3.1 to 3.3.2.</p> |
| </li> |
| <li> |
| <p>Bump org.assertj:assertj-core from 3.20.2 to 3.22.0.</p> |
| </li> |
| <li> |
| <p>Bump org.codehaus.groovy:groovy-* from 3.0.8 to 3.0.9.</p> |
| </li> |
| <li> |
| <p>Bump org.eclipse.persistence:org.eclipse.persistence.jpa from 2.7.9 to 2.7.10.</p> |
| </li> |
| <li> |
| <p>Bump org.fusesource.jansi:jansi from 2.3.4 to 2.4.0.</p> |
| </li> |
| <li> |
| <p>Bump org.jacoco:jacoco-maven-plugin from 0.8.6 to 0.8.7.</p> |
| </li> |
| <li> |
| <p>Bump org.junit.jupiter:junit-* from 5.7.2 to 5.8.2.</p> |
| </li> |
| <li> |
| <p>Bump org.junit-pioneer:junit-pioneer from 1.5.0 to 1.6.1.</p> |
| </li> |
| <li> |
| <p>Bump org.mongodb:bson from 4.2.2 to 4.5.0.</p> |
| </li> |
| <li> |
| <p>Bump org.mongodb:mongodb-driver-sync from 4.2.2 to 4.5.0.</p> |
| </li> |
| <li> |
| <p>Bump org.springframework:spring-* from 5.3.13 to 5.3.15.</p> |
| </li> |
| <li> |
| <p>Bump org.xmlunit:xmlunit-* from 2.8.3 to 2.8.4.</p> |
| </li> |
| <li> |
| <p>Replace usages of "compile" with "implementation" in the Gradle docs. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3215">LOG4J2-3215</a>)</p> |
| </li> |
| <li> |
| <p>Change modifier of method org.apache.logging.log4j.core.tools.Generate#generate to public (was package private) to facilitate automated code generation. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3267">LOG4J2-3267</a>)</p> |
| </li> |
| <li> |
| <p>log4j-jpl formats message parameters correctly using MessageFormat. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3345">LOG4J2-3345</a>)</p> |
| </li> |
| <li> |
| <p>Bump Tomcat from 8.5.20 to 10.0.14 in log4j-appserver along with some dependency clean-up. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3368">LOG4J2-3368</a>)</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="release-notes-2-17-2-fixed">Fixed</h3> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Fix DTD error: Add missing ELEMENT for Marker.</p> |
| </li> |
| <li> |
| <p>Fix log4j-jakarta-web service file #723.</p> |
| </li> |
| <li> |
| <p>JndiManager reverts to 2.17.0 behavior: Read the system property for each call.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge PropertiesConfiguration.buildAppender not adding filters to custom appender. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3281">LOG4J2-3281</a>)</p> |
| </li> |
| <li> |
| <p>Flag LogManager as initialized if the LoggerFactory is provided as a property. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3304">LOG4J2-3304</a>)</p> |
| </li> |
| <li> |
| <p>OptionConverter could cause a StackOverflowError. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3306">LOG4J2-3306</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge should ignore case in properties file keys. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3316">LOG4J2-3316</a>)</p> |
| </li> |
| <li> |
| <p>Fix RoutingAppender backward compatibility and disallow recursive evaluation of lookup results outside of configuration properties. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3317">LOG4J2-3317</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class org.apache.log4j.spi.LoggingEvent missing constructors and public instance variable. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3326">LOG4J2-3326</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge fixes parsing filters in properties configuration file #680. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3326">LOG4J2-3326</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing OptionConverter.instantiateByKey(Properties, String, Class, Object). (<a href="https://issues.apache.org/jira/browse/LOG4J2-3326">LOG4J2-3326</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge does not support system properties in log4j.xml. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3328">LOG4J2-3328</a>)</p> |
| </li> |
| <li> |
| <p>Configurator.setLevel not fetching the correct LoggerContext. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3330">LOG4J2-3330</a>)</p> |
| </li> |
| <li> |
| <p>Fix ThreadContextDataInjector initialization deadlock (<a href="https://issues.apache.org/jira/browse/LOG4J2-3333">LOG4J2-3333</a>)</p> |
| </li> |
| <li> |
| <p>Fix substitutions when programmatic configuration is used (<a href="https://issues.apache.org/jira/browse/LOG4J2-3358">LOG4J2-3358</a>)</p> |
| </li> |
| <li> |
| <p>AppenderLoggingException logging any exception to a MongoDB Appender. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3392">LOG4J2-3392</a>)</p> |
| </li> |
| <li> |
| <p>Possible NullPointerException in MongoDb4DocumentObject, MongoDbDocumentObject, DefaultNoSqlObject. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3392">LOG4J2-3392</a>)</p> |
| </li> |
| <li> |
| <p>Fix DefaultConfiguration leak in PatternLayout (<a href="https://issues.apache.org/jira/browse/LOG4J2-3404">LOG4J2-3404</a>)</p> |
| </li> |
| <li> |
| <p>Document that the Spring Boot Lookup requires the log4j-spring-boot dependency. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3405">LOG4J2-3405</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge Check for non-existent appender when parsing properties #761. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3407">LOG4J2-3407</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge supports global threshold #764. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3407">LOG4J2-3407</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge throws a ClassCastException when logging a Map with non-String keys. (<a href="https://issues.apache.org/jira/browse/LOG4J2-3410">LOG4J2-3410</a>)</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge adds org.apache.log4j.Hierarchy.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge adds org.apache.log4j.component.helpers.Constants.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge adds org.apache.log4j.helpers.Loader.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge adds org.apache.log4j.helpers.LogLog.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge adds org.apache.log4j.spi.DefaultRepositorySelector.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge adds org.apache.log4j.spi.NOPLoggerRepository and NOPLogger.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge adds org.apache.log4j.spi.RootLogger.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class Category is missing some protected instance variables.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class Category should implement AppenderAttachable.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class ConsoleAppender should extend WriterAppender and provide better compatibility with custom appenders.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class LogManager default constructor should be public.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class OptionConverter is missing selectAndConfigure() methods.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class PatternLayout is missing constants DEFAULT_CONVERSION_PATTERN and TTCC_CONVERSION_PATTERN.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge class PropertyConfigurator should implement Configurator.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge creates a SocketAppender instead of a SyslogAppender.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge implements LogManager.getCurrentLoggers() fully.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge implements most of DOMConfigurator.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge interface Configurator doConfigure() methods should use LoggerRepository, not LoggerContext.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge interface org.apache.log4j.spi.RendererSupport was in the wrong package and incomplete.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge interfaces missing from package org.apache.log4j.spi: ThrowableRenderer, ThrowableRendererSupport, TriggeringEventEvaluator.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge issues with filters #753.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge method Category.exists(String) should be static.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge method NDC.inherit(Stack) should not use generics to provide source compatibility.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge methods Category.getChainedPriority() and getEffectiveLevel() should not be final.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge methods missing in org.apache.log4j.Category: getDefaultHierarchy(), getHierarchy(), getLoggerRepository().</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missed</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missed org.apache.log4j.pattern.FormattingInfo.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missed org.apache.log4j.pattern.NameAbbreviator.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing DefaultThrowableRenderer.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing FormattingInfo.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing PatternConverter.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing PatternParser.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing UtilLoggingLevel.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing class org.apache.log4j.or.RendererMap.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing some LocationInfo constructors.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge missing some ThrowableInformation constructors.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge now logs a warning instead of throwing an NullPointerException when building a Syslog appender with a missing "SyslogHost" param.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge should allow property and XML attributes to start with either an upper-case or lower-case letter.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge supports the SocketAppender.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge throws ClassCastException when using SimpleLayout and others #708.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge uses some incorrect default property values in some appenders.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge uses the wrong default values for a TTCCLayout #709.</p> |
| </li> |
| <li> |
| <p>Log4j 1.2 bridge uses the wrong file pattern for rolling file appenders #710.</p> |
| </li> |
| <li> |
| <p>Trim whitespace before parsing a String into an Integer.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| </div> |
| </main> |
| </div> |
| </div> |
| <hr/> |
| <footer> |
| <div class="container-fluid"> |
| <div class="row-fluid"> |
| <p align="center">Copyright © 1999-2024 <a class="external" href="https://www.apache.org">The Apache Software Foundation</a>. All Rights Reserved.<br> |
| Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, and the Apache Logging project logo are trademarks of The Apache Software Foundation.</p> |
| </div> |
| </div> |
| </footer> |
| <script> |
| if(anchors) { |
| anchors.add(); |
| } |
| </script> |
| </body> |
| </html> |