This is an automated email from the ASF dual-hosted git repository.

pkarwasz pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 9c2a359768cacae0f03fb9c201cc0a64339abb06
Merge: cb9fa1c36a 342e1d3f82
Author: Piotr P. Karwasz <[email protected]>
AuthorDate: Tue May 28 15:15:25 2024 +0200

    Merge remote-tracking branch 'apache/main' into doc/main/configuration

 .github/workflows/build.yaml                       |    4 +-
 .github/workflows/codeql-analysis.yaml             |    2 +-
 .github/workflows/deploy-site.yaml                 |    6 +-
 .github/workflows/merge-dependabot.yaml            |    4 +-
 antora-playbook.yaml                               |    3 +
 log4j-1.2-api/.log4j-plugin-processing-activator   |    1 -
 log4j-1.2-api/pom.xml                              |  151 --
 .../src/main/java/org/apache/log4j/Appender.java   |  139 --
 .../java/org/apache/log4j/AppenderSkeleton.java    |  156 --
 .../java/org/apache/log4j/BasicConfigurator.java   |   64 -
 .../src/main/java/org/apache/log4j/Category.java   |  678 --------
 .../main/java/org/apache/log4j/CategoryKey.java    |   49 -
 .../java/org/apache/log4j/ConsoleAppender.java     |  138 --
 .../org/apache/log4j/DefaultCategoryFactory.java   |   29 -
 .../org/apache/log4j/DefaultThrowableRenderer.java |   87 -
 .../main/java/org/apache/log4j/FileAppender.java   |  315 ----
 .../src/main/java/org/apache/log4j/Hierarchy.java  |  530 ------
 .../src/main/java/org/apache/log4j/Layout.java     |   87 -
 .../src/main/java/org/apache/log4j/Level.java      |  259 ---
 .../src/main/java/org/apache/log4j/LogManager.java |  208 ---
 .../src/main/java/org/apache/log4j/Logger.java     |   71 -
 .../src/main/java/org/apache/log4j/MDC.java        |   71 -
 .../src/main/java/org/apache/log4j/NDC.java        |  205 ---
 .../main/java/org/apache/log4j/PatternLayout.java  |  132 --
 .../src/main/java/org/apache/log4j/Priority.java   |  245 ---
 .../org/apache/log4j/PropertyConfigurator.java     |  705 --------
 .../main/java/org/apache/log4j/ProvisionNode.java  |   28 -
 .../java/org/apache/log4j/RenderedMessage.java     |   59 -
 .../java/org/apache/log4j/RollingFileAppender.java |  255 ---
 .../main/java/org/apache/log4j/SimpleLayout.java   |   42 -
 .../main/java/org/apache/log4j/VectorAppender.java |   77 -
 .../main/java/org/apache/log4j/WriterAppender.java |  381 -----
 .../org/apache/log4j/bridge/AppenderAdapter.java   |  100 --
 .../org/apache/log4j/bridge/AppenderWrapper.java   |  146 --
 .../apache/log4j/bridge/ErrorHandlerAdapter.java   |   59 -
 .../org/apache/log4j/bridge/FilterAdapter.java     |  112 --
 .../org/apache/log4j/bridge/FilterWrapper.java     |   68 -
 .../org/apache/log4j/bridge/LayoutAdapter.java     |   94 --
 .../org/apache/log4j/bridge/LayoutWrapper.java     |   79 -
 .../org/apache/log4j/bridge/LogEventAdapter.java   |  216 ---
 .../org/apache/log4j/bridge/LogEventWrapper.java   |  218 ---
 .../apache/log4j/bridge/RewritePolicyAdapter.java  |   47 -
 .../apache/log4j/bridge/RewritePolicyWrapper.java  |   44 -
 .../org/apache/log4j/builders/AbstractBuilder.java |  246 ---
 .../java/org/apache/log4j/builders/Builder.java    |   26 -
 .../org/apache/log4j/builders/BuilderManager.java  |  187 ---
 .../java/org/apache/log4j/builders/Parser.java     |   46 -
 .../log4j/builders/appender/AppenderBuilder.java   |   42 -
 .../builders/appender/AsyncAppenderBuilder.java    |  175 --
 .../builders/appender/ConsoleAppenderBuilder.java  |  170 --
 .../appender/DailyRollingFileAppenderBuilder.java  |  212 ---
 .../EnhancedRollingFileAppenderBuilder.java        |  295 ----
 .../builders/appender/FileAppenderBuilder.java     |  170 --
 .../builders/appender/NullAppenderBuilder.java     |   54 -
 .../builders/appender/RewriteAppenderBuilder.java  |  163 --
 .../appender/RollingFileAppenderBuilder.java       |  216 ---
 .../builders/appender/SocketAppenderBuilder.java   |  169 --
 .../builders/appender/SyslogAppenderBuilder.java   |  214 ---
 .../log4j/builders/appender/package-info.java      |   20 -
 .../builders/filter/DenyAllFilterBuilder.java      |   46 -
 .../log4j/builders/filter/FilterBuilder.java       |   27 -
 .../builders/filter/LevelMatchFilterBuilder.java   |   93 --
 .../builders/filter/LevelRangeFilterBuilder.java   |  108 --
 .../builders/filter/StringMatchFilterBuilder.java  |   96 --
 .../apache/log4j/builders/filter/package-info.java |   20 -
 .../log4j/builders/layout/HtmlLayoutBuilder.java   |   85 -
 .../builders/layout/PatternLayoutBuilder.java      |  107 --
 .../log4j/builders/layout/SimpleLayoutBuilder.java |   52 -
 .../log4j/builders/layout/TTCCLayoutBuilder.java   |  139 --
 .../log4j/builders/layout/XmlLayoutBuilder.java    |   76 -
 .../apache/log4j/builders/layout/package-info.java |   20 -
 .../org/apache/log4j/builders/package-info.java    |   22 -
 .../builders/rewrite/RewritePolicyBuilder.java     |   27 -
 .../log4j/builders/rewrite/package-info.java       |   20 -
 .../rolling/CompositeTriggeringPolicyBuilder.java  |   75 -
 .../rolling/SizeBasedTriggeringPolicyBuilder.java  |   76 -
 .../rolling/TimeBasedRollingPolicyBuilder.java     |   57 -
 .../builders/rolling/TriggeringPolicyBuilder.java  |   24 -
 .../apache/log4j/component/helpers/Constants.java  |  122 --
 .../apache/log4j/config/Log4j1Configuration.java   |   90 -
 .../log4j/config/PropertiesConfiguration.java      |  652 --------
 .../config/PropertiesConfigurationFactory.java     |   87 -
 .../org/apache/log4j/config/PropertySetter.java    |  279 ----
 .../log4j/config/PropertySetterException.java      |   64 -
 .../java/org/apache/log4j/config/package-info.java |   27 -
 .../log4j/helpers/AbsoluteTimeDateFormat.java      |  134 --
 .../log4j/helpers/AppenderAttachableImpl.java      |  106 --
 .../java/org/apache/log4j/helpers/BoundedFIFO.java |  162 --
 .../apache/log4j/helpers/CountingQuietWriter.java  |   54 -
 .../org/apache/log4j/helpers/CyclicBuffer.java     |  146 --
 .../java/org/apache/log4j/helpers/DateLayout.java  |  173 --
 .../apache/log4j/helpers/DateTimeDateFormat.java   |   80 -
 .../org/apache/log4j/helpers/FileWatchdog.java     |  105 --
 .../org/apache/log4j/helpers/FormattingInfo.java   |   38 -
 .../apache/log4j/helpers/ISO8601DateFormat.java    |  171 --
 .../main/java/org/apache/log4j/helpers/Loader.java |  138 --
 .../main/java/org/apache/log4j/helpers/LogLog.java |  172 --
 .../org/apache/log4j/helpers/NullEnumeration.java  |   46 -
 .../org/apache/log4j/helpers/OptionConverter.java  |  693 --------
 .../org/apache/log4j/helpers/PatternConverter.java |  105 --
 .../org/apache/log4j/helpers/PatternParser.java    |  517 ------
 .../java/org/apache/log4j/helpers/QuietWriter.java |   64 -
 .../log4j/helpers/RelativeTimeDateFormat.java      |   58 -
 .../org/apache/log4j/helpers/UtilLoggingLevel.java |  235 ---
 .../org/apache/log4j/helpers/package-info.java     |   25 -
 .../org/apache/log4j/jmx/AbstractDynamicMBean.java |  177 --
 .../src/main/java/org/apache/log4j/jmx/Agent.java  |  124 --
 .../org/apache/log4j/jmx/AppenderDynamicMBean.java |  296 ----
 .../apache/log4j/jmx/HierarchyDynamicMBean.java    |  268 ---
 .../org/apache/log4j/jmx/LayoutDynamicMBean.java   |  225 ---
 .../org/apache/log4j/jmx/LoggerDynamicMBean.java   |  242 ---
 .../java/org/apache/log4j/jmx/MethodUnion.java     |   30 -
 .../java/org/apache/log4j/jmx/package-info.java    |   25 -
 .../apache/log4j/layout/Log4j1SyslogLayout.java    |  236 ---
 .../org/apache/log4j/layout/Log4j1XmlLayout.java   |  186 ---
 .../java/org/apache/log4j/layout/package-info.java |   22 -
 .../org/apache/log4j/legacy/core/CategoryUtil.java |  161 --
 .../org/apache/log4j/legacy/core/ContextUtil.java  |   49 -
 .../java/org/apache/log4j/or/DefaultRenderer.java  |   38 -
 .../java/org/apache/log4j/or/ObjectRenderer.java   |   29 -
 .../main/java/org/apache/log4j/or/RendererMap.java |  174 --
 .../org/apache/log4j/or/ThreadGroupRenderer.java   |   56 -
 .../org/apache/log4j/or/jms/MessageRenderer.java   |   86 -
 .../java/org/apache/log4j/or/jms/package-info.java |   22 -
 .../java/org/apache/log4j/or/package-info.java     |   22 -
 .../main/java/org/apache/log4j/package-info.java   |   25 -
 .../org/apache/log4j/pattern/FormattingInfo.java   |  127 --
 .../log4j/pattern/Log4j1LevelPatternConverter.java |   49 -
 .../log4j/pattern/Log4j1MdcPatternConverter.java   |   86 -
 .../log4j/pattern/Log4j1NdcPatternConverter.java   |   62 -
 .../org/apache/log4j/pattern/NameAbbreviator.java  |  341 ----
 .../org/apache/log4j/pattern/package-info.java     |   22 -
 .../org/apache/log4j/rewrite/MapRewritePolicy.java |  124 --
 .../log4j/rewrite/PropertyRewritePolicy.java       |  129 --
 .../org/apache/log4j/rewrite/RewritePolicy.java    |   36 -
 .../org/apache/log4j/rewrite/package-info.java     |   22 -
 .../org/apache/log4j/spi/AppenderAttachable.java   |   73 -
 .../java/org/apache/log4j/spi/Configurator.java    |   60 -
 .../log4j/spi/DefaultRepositorySelector.java       |   31 -
 .../main/java/org/apache/log4j/spi/ErrorCode.java  |   31 -
 .../java/org/apache/log4j/spi/ErrorHandler.java    |   90 -
 .../src/main/java/org/apache/log4j/spi/Filter.java |   97 --
 .../apache/log4j/spi/HierarchyEventListener.java   |   33 -
 .../java/org/apache/log4j/spi/LocationInfo.java    |  141 --
 .../java/org/apache/log4j/spi/LoggerFactory.java   |   31 -
 .../org/apache/log4j/spi/LoggerRepository.java     |  108 --
 .../java/org/apache/log4j/spi/LoggingEvent.java    |  243 ---
 .../main/java/org/apache/log4j/spi/NOPLogger.java  |  266 ---
 .../org/apache/log4j/spi/NOPLoggerRepository.java  |  153 --
 .../java/org/apache/log4j/spi/OptionHandler.java   |   25 -
 .../java/org/apache/log4j/spi/RendererSupport.java |   27 -
 .../org/apache/log4j/spi/RepositorySelector.java   |   43 -
 .../main/java/org/apache/log4j/spi/RootLogger.java |   63 -
 .../org/apache/log4j/spi/ThrowableInformation.java |   96 --
 .../org/apache/log4j/spi/ThrowableRenderer.java    |   34 -
 .../apache/log4j/spi/ThrowableRendererSupport.java |   38 -
 .../apache/log4j/spi/TriggeringEventEvaluator.java |   33 -
 .../java/org/apache/log4j/spi/package-info.java    |   25 -
 .../java/org/apache/log4j/varia/DenyAllFilter.java |   64 -
 .../apache/log4j/varia/FallbackErrorHandler.java   |  124 --
 .../org/apache/log4j/varia/LevelMatchFilter.java   |   90 -
 .../org/apache/log4j/varia/LevelRangeFilter.java   |  130 --
 .../java/org/apache/log4j/varia/NullAppender.java  |   86 -
 .../log4j/varia/ReloadingPropertyConfigurator.java |   43 -
 .../org/apache/log4j/varia/StringMatchFilter.java  |  105 --
 .../java/org/apache/log4j/varia/package-info.java  |   22 -
 .../java/org/apache/log4j/xml/DOMConfigurator.java |  156 --
 .../org/apache/log4j/xml/Log4jEntityResolver.java  |   51 -
 .../log4j/xml/UnrecognizedElementHandler.java      |   42 -
 .../java/org/apache/log4j/xml/XMLWatchdog.java     |   36 -
 .../org/apache/log4j/xml/XmlConfiguration.java     |  835 ---------
 .../apache/log4j/xml/XmlConfigurationFactory.java  |   87 -
 .../java/org/apache/log4j/xml/package-info.java    |   25 -
 .../resources/META-INF/log4j/propertyMapping.json  |   13 -
 .../main/resources/org/apache/log4j/xml/log4j.dtd  |  237 ---
 .../apache/log4j/BasicConfigurationFactory.java    |   67 -
 .../org/apache/log4j/BasicConfiguratorTest.java    |   57 -
 .../org/apache/log4j/CallerInformationTest.java    |   64 -
 .../test/java/org/apache/log4j/CategoryTest.java   |  428 -----
 .../java/org/apache/log4j/ConsoleAppenderTest.java |   50 -
 .../org/apache/log4j/CustomAppenderSkeleton.java   |   75 -
 .../org/apache/log4j/CustomConsoleAppender.java    |   84 -
 .../java/org/apache/log4j/CustomFileAppender.java  |   48 -
 .../java/org/apache/log4j/CustomNoopAppender.java  |   65 -
 .../org/apache/log4j/CustomWriterAppender.java     |   74 -
 .../src/test/java/org/apache/log4j/LayoutTest.java |  170 --
 .../src/test/java/org/apache/log4j/LevelTest.java  |  275 ---
 .../test/java/org/apache/log4j/ListAppender.java   |   83 -
 .../test/java/org/apache/log4j/LogManagerTest.java |   50 -
 .../test/java/org/apache/log4j/LogWithMDCTest.java |   57 -
 .../java/org/apache/log4j/LogWithRouteTest.java    |   58 -
 .../java/org/apache/log4j/LoggerJira3410Test.java  |   80 -
 .../src/test/java/org/apache/log4j/LoggerTest.java |  520 ------
 .../test/java/org/apache/log4j/LoggingTest.java    |   40 -
 .../test/java/org/apache/log4j/MDCTestCase.java    |   48 -
 .../src/test/java/org/apache/log4j/NDCTest.java    |   47 -
 .../test/java/org/apache/log4j/PriorityTest.java   |  224 ---
 .../org/apache/log4j/PropertyConfiguratorTest.java |  417 -----
 .../test/java/org/apache/log4j/VelocityTest.java   |   60 -
 .../apache/log4j/bridge/LogEventWrapperTest.java   |   49 -
 .../apache/log4j/builders/BuilderManagerTest.java  |   55 -
 .../log4j/builders/Log4j2ListAppenderBuilder.java  |   92 -
 .../filter/LevelRangeFilterBuilderTest.java        |  209 ---
 .../builders/layout/PatternLayoutBuilderTest.java  |   55 -
 .../config/AbstractLog4j1ConfigurationTest.java    |  657 --------
 .../org/apache/log4j/config/AsyncAppenderTest.java |   68 -
 .../org/apache/log4j/config/AutoConfigTest.java    |   65 -
 .../log4j/config/MapRewriteAppenderTest.java       |   75 -
 .../apache/log4j/config/NeutralFilterFixture.java  |   31 -
 .../config/PropertiesConfigurationFactoryTest.java |   49 -
 .../log4j/config/PropertiesConfigurationTest.java  |  367 ----
 .../config/PropertiesReconfigurationTest.java      |  228 ---
 .../PropertiesRollingWithPropertiesTest.java       |   49 -
 .../apache/log4j/config/RewriteAppenderTest.java   |   70 -
 .../config/SocketAppenderConfigurationTest.java    |   89 -
 .../org/apache/log4j/config/StartsWithFilter.java  |   37 -
 .../config/SyslogAppenderConfigurationTest.java    |  120 --
 .../apache/log4j/config/SyslogAppenderTest.java    |   73 -
 .../org/apache/log4j/config/TestConfigurator.java  |   53 -
 .../log4j/config/XmlConfigurationFactoryTest.java  |   49 -
 .../apache/log4j/config/XmlConfigurationTest.java  |  213 ---
 .../log4j/config/XmlReconfigurationTest.java       |   86 -
 .../log4j/config/XmlRollingWithPropertiesTest.java |   49 -
 .../apache/log4j/helpers/BoundedFIFOTestCase.java  |  229 ---
 .../apache/log4j/helpers/CyclicBufferTestCase.java |  147 --
 .../org/apache/log4j/helpers/DateLayoutTest.java   |  288 ----
 .../java/org/apache/log4j/helpers/LogLogTest.java  |   51 -
 .../log4j/helpers/OptionConverterLevelTest.java    |  121 --
 .../apache/log4j/helpers/UtilLoggingLevelTest.java |   54 -
 .../log4j/layout/Log4j1SyslogLayoutTest.java       |   95 --
 .../apache/log4j/layout/Log4j1XmlLayoutTest.java   |   88 -
 .../apache/log4j/pattern/FormattingInfoTest.java   |   90 -
 .../pattern/Log4j1LevelPatternConverterTest.java   |   46 -
 .../pattern/Log4j1MdcPatternConverterTest.java     |   76 -
 .../pattern/Log4j1NdcPatternConverterTest.java     |   72 -
 .../apache/log4j/pattern/NameAbbreviatorTest.java  |  326 ----
 .../org/apache/log4j/spi/LocationInfoTest.java     |   79 -
 .../apache/log4j/spi/ThrowableInformationTest.java |  329 ----
 .../log4j/util/AbsoluteDateAndTimeFilter.java      |   35 -
 .../org/apache/log4j/util/AbsoluteTimeFilter.java  |   34 -
 .../test/java/org/apache/log4j/util/Compare.java   |  155 --
 .../java/org/apache/log4j/util/ControlFilter.java  |   45 -
 .../log4j/util/EnhancedJunitTestRunnerFilter.java  |   64 -
 .../log4j/util/EnhancedLineNumberFilter.java       |   41 -
 .../test/java/org/apache/log4j/util/Filter.java    |   34 -
 .../java/org/apache/log4j/util/ISO8601Filter.java  |   34 -
 .../apache/log4j/util/JunitTestRunnerFilter.java   |   53 -
 .../org/apache/log4j/util/LineNumberFilter.java    |   35 -
 .../org/apache/log4j/util/RelativeTimeFilter.java  |   35 -
 .../apache/log4j/util/SerializationTestHelper.java |  135 --
 .../org/apache/log4j/util/SunReflectFilter.java    |   42 -
 .../java/org/apache/log4j/util/Transformer.java    |   59 -
 .../log4j/util/UnexpectedFormatException.java      |   26 -
 .../apache/log4j/util/XMLLineAttributeFilter.java  |   35 -
 .../org/apache/log4j/util/XMLTimestampFilter.java  |   32 -
 .../java/org/apache/log4j/xml/DOMTestCase.java     |  289 ----
 .../src/test/java/org/apache/log4j/xml/XLevel.java |   74 -
 .../src/test/resources/L7D_en_US.properties        |   20 -
 log4j-1.2-api/src/test/resources/L7D_fr.properties |   20 -
 .../src/test/resources/L7D_fr_CH.properties        |   19 -
 .../src/test/resources/LOG4J2-3247.properties      |   36 -
 .../src/test/resources/LOG4J2-3326.properties      |   26 -
 .../src/test/resources/LOG4J2-3407.properties      |   26 -
 .../log4j-DailyRollingFileAppender.properties      |   47 -
 .../config-1.2/log4j-DailyRollingFileAppender.xml  |   36 -
 .../log4j-EnhancedRollingFileAppender.properties   |   65 -
 .../log4j-EnhancedRollingFileAppender.xml          |   94 --
 .../log4j-FileAppender-with-props.properties       |   41 -
 .../config-1.2/log4j-LevelRangeFilter.properties   |   23 -
 .../config-1.2/log4j-LevelRangeFilter.xml          |   32 -
 .../resources/config-1.2/log4j-NullAppender.xml    |   26 -
 ...log4j-RollingFileAppender-with-props.properties |   47 -
 .../log4j-RollingFileAppender.properties           |   42 -
 .../config-1.2/log4j-RollingFileAppender.xml       |   37 -
 .../config-1.2/log4j-capitalization.properties     |   44 -
 .../resources/config-1.2/log4j-capitalization.xml  |   45 -
 .../log4j-console-EnhancedPatternLayout.properties |   36 -
 .../log4j-console-EnhancedPatternLayout.xml        |   36 -
 .../config-1.2/log4j-console-HtmlLayout.properties |   37 -
 .../config-1.2/log4j-console-HtmlLayout.xml        |   37 -
 .../log4j-console-PatternLayout.properties         |   36 -
 .../config-1.2/log4j-console-PatternLayout.xml     |   36 -
 .../log4j-console-SimpleLayout.properties          |   35 -
 .../config-1.2/log4j-console-SimpleLayout.xml      |   34 -
 .../config-1.2/log4j-console-TTCCLayout.properties |   40 -
 .../config-1.2/log4j-console-TTCCLayout.xml        |   40 -
 .../config-1.2/log4j-console-XmlLayout.properties  |   37 -
 .../config-1.2/log4j-defaultValues.properties      |   82 -
 .../resources/config-1.2/log4j-defaultValues.xml   |   66 -
 .../config-1.2/log4j-file-SimpleLayout.properties  |   38 -
 .../config-1.2/log4j-file-SimpleLayout.xml         |   37 -
 .../config-1.2/log4j-global-threshold.properties   |   20 -
 .../config-1.2/log4j-global-threshold.xml          |   26 -
 .../log4j-system-properties-1.properties           |   37 -
 .../config-1.2/log4j-system-properties-1.xml       |   34 -
 .../log4j-system-properties-2.properties           |   38 -
 .../config-1.2/log4j-untrimmed.properties          |   28 -
 log4j-1.2-api/src/test/resources/hello.vm          |    6 -
 .../src/test/resources/log-RouteWithMDC.xml        |   46 -
 .../resources/log4j-multipleFilters.properties     |   69 -
 .../src/test/resources/log4j-multipleFilters.xml   |   92 -
 log4j-1.2-api/src/test/resources/log4j.xml         |   36 -
 .../resources/log4j1-1.2.17/input/RFA1.properties  |   29 -
 .../log4j1-1.2.17/input/defaultInit3.properties    |   23 -
 .../log4j1-1.2.17/input/fallback1.properties       |   34 -
 .../log4j1-1.2.17/input/filter1.properties         |   34 -
 .../input/hierarchyThreshold1.properties           |   24 -
 .../input/hierarchyThreshold2.properties           |   24 -
 .../input/hierarchyThreshold3.properties           |   24 -
 .../input/hierarchyThreshold4.properties           |   24 -
 .../input/hierarchyThreshold5.properties           |   24 -
 .../input/hierarchyThreshold6.properties           |   24 -
 .../input/hierarchyThreshold7.properties           |   24 -
 .../input/hierarchyThreshold8.properties           |   24 -
 .../pattern/enhancedPatternLayout.mdc.1.properties |   28 -
 .../pattern/enhancedPatternLayout1.properties      |   28 -
 .../pattern/enhancedPatternLayout10.properties     |   28 -
 .../pattern/enhancedPatternLayout11.properties     |   28 -
 .../pattern/enhancedPatternLayout12.properties     |   28 -
 .../pattern/enhancedPatternLayout13.properties     |   28 -
 .../pattern/enhancedPatternLayout14.properties     |   28 -
 .../pattern/enhancedPatternLayout15.properties     |   28 -
 .../pattern/enhancedPatternLayout16.properties     |   28 -
 .../pattern/enhancedPatternLayout2.properties      |   28 -
 .../pattern/enhancedPatternLayout3.properties      |   28 -
 .../pattern/enhancedPatternLayout4.properties      |   28 -
 .../pattern/enhancedPatternLayout5.properties      |   28 -
 .../pattern/enhancedPatternLayout6.properties      |   29 -
 .../pattern/enhancedPatternLayout7.properties      |   28 -
 .../pattern/enhancedPatternLayout8.properties      |   28 -
 .../pattern/enhancedPatternLayout9.properties      |   28 -
 .../input/patternLayout.mdc.1.properties           |   28 -
 .../log4j1-1.2.17/input/patternLayout1.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout10.properties |   23 -
 .../log4j1-1.2.17/input/patternLayout11.properties |   23 -
 .../log4j1-1.2.17/input/patternLayout12.properties |   23 -
 .../log4j1-1.2.17/input/patternLayout13.properties |   23 -
 .../log4j1-1.2.17/input/patternLayout14.properties |   23 -
 .../log4j1-1.2.17/input/patternLayout2.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout3.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout4.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout5.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout6.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout7.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout8.properties  |   23 -
 .../log4j1-1.2.17/input/patternLayout9.properties  |   23 -
 .../log4j1-1.2.17/input/socketServer1.properties   |   25 -
 .../log4j1-1.2.17/input/socketServer2.properties   |   25 -
 .../log4j1-1.2.17/input/socketServer3.properties   |   25 -
 .../log4j1-1.2.17/input/socketServer4.properties   |   25 -
 .../log4j1-1.2.17/input/socketServer5.properties   |   25 -
 .../log4j1-1.2.17/input/socketServer6.properties   |   25 -
 .../log4j1-1.2.17/input/socketServer7.properties   |   25 -
 .../log4j1-1.2.17/input/socketServer8.properties   |   25 -
 .../resources/log4j1-1.2.17/input/xml/DOMTest4.xml |   44 -
 .../log4j1-1.2.17/input/xml/DOMTest4_A1.xml        |   26 -
 .../log4j1-1.2.17/input/xml/DOMTest4_A2.xml        |   24 -
 .../log4j1-1.2.17/input/xml/DOMTestCase1.xml       |   50 -
 .../input/xml/SocketAppenderTestConfig.xml         |   59 -
 .../log4j1-1.2.17/input/xml/categoryfactory1.xml   |   35 -
 .../log4j1-1.2.17/input/xml/categoryfactory2.xml   |   38 -
 .../log4j1-1.2.17/input/xml/customLevel1.xml       |   34 -
 .../log4j1-1.2.17/input/xml/customLevel2.xml       |   41 -
 .../log4j1-1.2.17/input/xml/customLevel3.xml       |   44 -
 .../log4j1-1.2.17/input/xml/customLevel4.xml       |   35 -
 .../log4j1-1.2.17/input/xml/customLogger1.xml      |   35 -
 .../log4j1-1.2.17/input/xml/customLogger2.xml      |   43 -
 .../log4j1-1.2.17/input/xml/customLogger3.xml      |   35 -
 .../log4j1-1.2.17/input/xml/defaultInit.xml        |   32 -
 .../log4j1-1.2.17/input/xml/fallback1.xml          |   50 -
 .../log4j1-1.2.17/input/xml/loggerfactory1.xml     |   35 -
 .../log4j1-1.2.17/input/xml/testReset.xml          |   27 -
 .../log4j1-1.2.17/input/xml/throwableRenderer1.xml |   24 -
 .../log4j1-1.2.17/resources/L7D_en_US.properties   |   20 -
 .../log4j1-1.2.17/resources/L7D_fr.properties      |   20 -
 .../log4j1-1.2.17/resources/L7D_fr_CH.properties   |   19 -
 .../resources/TestLogSFPatterns.properties         |   25 -
 .../org/apache/log4j/TestLogMFPatterns.properties  |   25 -
 .../org/apache/log4j/TestLogSFPatterns.properties  |   25 -
 .../resources/org/apache/log4j/rewrite/map.log     |    3 -
 .../resources/org/apache/log4j/rewrite/map.xml     |   38 -
 .../org/apache/log4j/rewrite/property.log          |    2 -
 .../org/apache/log4j/rewrite/property.xml          |   40 -
 .../org/apache/log4j/rewrite/reflection.log        |    3 -
 .../org/apache/log4j/rewrite/reflection.xml        |   38 -
 .../resources/log4j1-appenders-custom-1.properties |   38 -
 .../resources/log4j1-appenders-custom-2.properties |   38 -
 .../src/test/resources/log4j1-async.properties     |   23 -
 log4j-1.2-api/src/test/resources/log4j1-async.xml  |   35 -
 .../src/test/resources/log4j1-file-1.properties    |   36 -
 .../src/test/resources/log4j1-file-2.properties    |   36 -
 log4j-1.2-api/src/test/resources/log4j1-file.xml   |   57 -
 .../src/test/resources/log4j1-list.properties      |   22 -
 log4j-1.2-api/src/test/resources/log4j1-list.xml   |   36 -
 .../src/test/resources/log4j1-mapRewrite.xml       |   33 -
 .../src/test/resources/log4j1-rewrite.xml          |   34 -
 .../resources/log4j1-rolling-properties.properties |   31 -
 .../test/resources/log4j1-rolling-properties.xml   |   30 -
 .../resources/log4j1-socket-xml-layout.properties  |   24 -
 .../src/test/resources/log4j1-socket.properties    |   25 -
 log4j-1.2-api/src/test/resources/log4j1-socket.xml |   36 -
 .../log4j1-syslog-protocol-default.properties      |   25 -
 .../log4j1-syslog-protocol-tcp.properties          |   26 -
 .../test/resources/log4j1-syslog-protocol-tcp.xml  |   37 -
 .../log4j1-syslog-protocol-udp.properties          |   26 -
 .../test/resources/log4j1-syslog-protocol-udp.xml  |   37 -
 log4j-1.2-api/src/test/resources/log4j1-syslog.xml |   36 -
 log4j-1.2-api/src/test/resources/logWithMDC.xml    |   39 -
 .../test/resources/witness/serialization/info.bin  |  Bin 60 -> 0 bytes
 log4j-core-test/pom.xml                            |    1 +
 .../log4j/core/util/OptionConverterTest.java       |   90 -
 log4j-core/pom.xml                                 |    2 +-
 .../logging/log4j/core/impl/CoreDefaultBundle.java |   58 +-
 .../logging/log4j/core/impl/Log4jProvider.java     |   15 -
 .../impl/internal/QueuedScopedContextProvider.java |   70 -
 .../logging/log4j/core/lookup/Interpolator.java    |    4 +-
 .../core/pattern/LiteralPatternConverter.java      |    1 -
 .../log4j/core/pattern/OptionConverter.java        |   64 +
 .../pattern/SimpleLiteralPatternConverter.java     |    1 -
 .../logging/log4j/core/util/OptionConverter.java   |  408 -----
 .../apache/logging/log4j/core/util/UuidUtil.java   |    9 +-
 .../apache/logging/log4j/docker/DockerLookup.java  |   15 +-
 .../logging/log4j/docker/DockerProperties.java     |   15 +-
 log4j-flume-ng/pom.xml                             |    5 -
 .../log4j/flume/appender/FlumeEmbeddedManager.java |    5 +-
 .../log4j/jndi/lookup/JndiDisabledLookupTest.java  |   21 +-
 .../logging/log4j/jndi/lookup/JndiLookupTest.java  |    4 +-
 .../jndi/lookup/JndiRestrictedLookupTest.java      |   10 +-
 .../logging/log4j/jndi/lookup/JndiLookup.java      |   27 +-
 .../logging/log4j/kit/env/PropertyEnvironment.java |  136 +-
 .../PropertiesUtilPropertyEnvironment.java         |    2 +-
 .../kit/env/support/BasicPropertyEnvironment.java  |   66 +-
 .../env/support/CompositePropertyEnvironment.java  |    4 +-
 .../kit/recycler/RecyclerFactoryProvider.java      |    8 +-
 .../internal/QueueingRecyclerFactoryProvider.java  |    1 -
 .../log4j/kit/env/TestPropertyEnvironment.java     |    2 +-
 .../env/internal/AbstractPropertyNamesTest.java    |    2 +-
 .../env/support/BasicPropertyEnvironmentTest.java  |    9 +-
 .../recycler/internal/RecyclerFactoryTestUtil.java |    6 +-
 log4j-layout-template-json-test/pom.xml            |    8 +-
 .../json/resolver/MessageResolverTest.java         |   39 -
 .../json/util/TruncatingBufferedWriterTest.java    |    8 +
 .../json/util/TruncatingBufferedWriter.java        |   15 +
 .../logging/log4j/mongodb/MongoDbResolver.java     |    5 +-
 log4j-osgi-test/pom.xml                            |    6 +-
 .../log4j/osgi/tests/AbstractLoadBundleTest.java   |   39 -
 .../logging/log4j/osgi/tests/CoreOsgiTest.java     |   14 -
 log4j-parent/pom.xml                               |   62 +-
 .../plugins/condition/OnPropertyConditionTest.java |  108 --
 .../plugins/condition/ConditionalOnProperty.java   |   38 -
 .../plugins/condition/OnPropertyCondition.java     |   66 -
 .../validation/constraints/RequiredProperty.java   |   48 -
 .../validators/RequiredPropertyValidator.java      |   58 -
 log4j-spring-cloud-config-client/pom.xml           |    4 +-
 pom.xml                                            |   56 +-
 ...logging_parent.xml => remove_log4j-1.2-api.xml} |    6 +-
 .../.3.x.x/update_apache_logging_parent.xml        |    2 +-
 .../update_com_fasterxml_jackson_jackson_bom.xml   |    4 +-
 .../update_commons_logging_commons_logging.xml     |    4 +-
 src/changelog/.3.x.x/update_io_netty_netty_bom.xml |    4 +-
 .../.3.x.x/update_net_bytebuddy_byte_buddy.xml     |    4 +-
 .../update_org_apache_commons_commons_compress.xml |    4 +-
 ...he_logging_log4j_log4j_docgen_maven_plugin.xml} |    4 +-
 ...> update_org_apache_logging_logging_parent.xml} |    4 +-
 ....xml => update_org_apache_maven_maven_core.xml} |    4 +-
 .../update_org_apache_tomcat_tomcat_juli.xml       |    4 +-
 ...ent.xml => update_org_assertj_assertj_core.xml} |    4 +-
 .../.3.x.x/update_org_mockito_mockito_bom.xml      |    4 +-
 src/changelog/.3.x.x/update_org_mongodb_bson.xml   |    4 +-
 ...ingframework_boot_spring_boot_autoconfigure.xml |    4 +-
 ...te_org_springframework_spring_framework_bom.xml |    4 +-
 src/site/antora/antora.tmpl.yml                    |    5 +
 src/site/antora/antora.yml                         |   13 +-
 .../ROOT/examples/manual/configuration/scripts.xml |   19 +-
 .../examples/manual/configuration/scripts.yaml     |    6 +-
 .../ROOT/examples/manual/markers/log4j2.properties |   24 +-
 .../ROOT/examples/manual/markers/log4j2.xml        |   43 +-
 .../ROOT/examples/manual/markers/log4j2.yaml       |   30 +-
 .../examples/manual/markers/marker-filtering.log   |   17 +-
 .../images/AsyncWithLocationThrpt1T-labeled.png    |  Bin 23273 -> 0 bytes
 .../antora/modules/ROOT/images/LocationPerf.png    |  Bin 33266 -> 0 bytes
 .../Log4j2AppenderThroughputComparison-linux.png   |  Bin 37494 -> 0 bytes
 .../Log4j2AppenderThroughputComparison-windows.png |  Bin 36089 -> 0 bytes
 .../ROOT/images/MarkerFilterCostComparison.png     |  Bin 22737 -> 0 bytes
 .../modules/ROOT/images/ParamMsgThrpt1-4T.png      |  Bin 37465 -> 0 bytes
 .../ResponseTimeAsyncClassicVsGcFree-label.png     |  Bin 31148 -> 0 bytes
 .../ResponseTimeAsyncLogging16Threads_8kEach.png   |  Bin 29429 -> 0 bytes
 ...ncLogging16Threads_8kEachLog4j2Only-labeled.png |  Bin 41663 -> 0 bytes
 .../ResponseTimeAsyncLogging4Threads_16kEach.png   |  Bin 32664 -> 0 bytes
 .../images/ResponseTimeSyncClassicVsGcFree.png     |  Bin 33240 -> 0 bytes
 .../ResponseTimeVsServiceTimeAsyncLoggers.png      |  Bin 34779 -> 0 bytes
 .../images/SyncThroughputLoggerComparisonLinux.png |  Bin 33718 -> 0 bytes
 .../SynchronousFileResponseTime2T32k-labeled.png   |  Bin 31907 -> 0 bytes
 .../images/ThreadContextFilterCostComparison.png   |  Bin 17874 -> 0 bytes
 .../ROOT/images/async-throughput-comparison.png    |  Bin 66734 -> 0 bytes
 .../ROOT/images/async-vs-sync-throughput.png       |  Bin 60459 -> 0 bytes
 .../images/garbage-free2.6-SyncThroughputLinux.png |  Bin 24197 -> 0 bytes
 .../log4j-2.5-FlightRecording-thumbnail40pct.png   |  Bin 57992 -> 0 bytes
 .../ROOT/images/log4j-2.5-FlightRecording.png      |  Bin 68628 -> 0 bytes
 .../log4j-2.6-FlightRecording-thumbnail40pct.png   |  Bin 45221 -> 0 bytes
 .../ROOT/images/log4j-2.6-FlightRecording.png      |  Bin 50481 -> 0 bytes
 src/site/antora/modules/ROOT/nav.adoc              |   47 +-
 .../antora/modules/ROOT/pages/_log4j1-eol.adoc     |    2 +-
 src/site/antora/modules/ROOT/pages/faq.adoc        |    8 +-
 .../ROOT/pages/{5min.adoc => getting-started.adoc} |  365 ++--
 .../modules/ROOT/pages/getting-started/index.adoc  |   62 -
 src/site/antora/modules/ROOT/pages/index.adoc      |   40 +-
 src/site/antora/modules/ROOT/pages/javadoc.adoc    |    2 +-
 .../antora/modules/ROOT/pages/log4j-1.2-api.adoc   |   15 +-
 .../antora/modules/ROOT/pages/log4j-flume-ng.adoc  |   13 +-
 src/site/antora/modules/ROOT/pages/log4j-jul.adoc  |   59 +-
 .../antora/modules/ROOT/pages/log4j-mongodb.adoc   |   44 -
 .../modules/ROOT/pages/log4j-slf4j-impl.adoc       |   10 +-
 .../modules/ROOT/pages/log4j-slf4j2-impl.adoc      |    9 +
 .../pages/log4j-spring-cloud-config-client.adoc    |   75 +-
 .../modules/ROOT/pages/manual/api-separation.adoc  |  233 ---
 src/site/antora/modules/ROOT/pages/manual/api.adoc |  215 +--
 .../modules/ROOT/pages/manual/appenders.adoc       | 1765 +++++++++++++-------
 .../modules/ROOT/pages/manual/architecture.adoc    |   50 +-
 .../antora/modules/ROOT/pages/manual/async.adoc    |  170 +-
 .../antora/modules/ROOT/pages/manual/cloud.adoc    |   18 +-
 .../modules/ROOT/pages/manual/compatibility.adoc   |   22 -
 .../modules/ROOT/pages/manual/customloglevels.adoc |  220 ---
 .../modules/ROOT/pages/manual/eventlogging.adoc    |  138 --
 .../modules/ROOT/pages/manual/extending.adoc       |   34 +-
 .../modules/ROOT/pages/manual/flowtracing.adoc     |  271 ---
 .../modules/ROOT/pages/manual/garbagefree.adoc     |  685 +++-----
 .../antora/modules/ROOT/pages/manual/index.adoc    |  166 +-
 .../modules/ROOT/pages/manual/installation.adoc    |   16 +-
 src/site/antora/modules/ROOT/pages/manual/jmx.adoc |   39 +-
 .../ROOT/pages/manual/json-template-layout.adoc    |   34 +-
 .../antora/modules/ROOT/pages/manual/layouts.adoc  |  634 ++++---
 .../modules/ROOT/pages/manual/log4j1-compat.adoc   |   97 --
 .../modules/ROOT/pages/manual/logbuilder.adoc      |   78 -
 .../antora/modules/ROOT/pages/manual/lookups.adoc  |   12 +-
 .../antora/modules/ROOT/pages/manual/markers.adoc  |  100 --
 .../antora/modules/ROOT/pages/manual/messages.adoc |  326 ----
 .../modules/ROOT/pages/manual/migration.adoc       |  432 +----
 .../modules/ROOT/pages/manual/performance.adoc     |  648 ++-----
 .../antora/modules/ROOT/pages/manual/plugins.adoc  |    2 -
 .../modules/ROOT/pages/manual/resource-logger.adoc |   88 -
 .../modules/ROOT/pages/manual/scoped-context.adoc  |  116 --
 .../ROOT/pages/manual/systemproperties.adoc        |    6 +-
 .../modules/ROOT/pages/manual/thread-context.adoc  |  238 ---
 .../modules/ROOT/pages/runtime-dependencies.adoc   |  242 ---
 .../modules/ROOT/partials/log4j-features.adoc      |   46 +
 ... api-best-practice-dont-use-string-concat.adoc} |   30 +-
 .../api-best-practice-dont-use-toString.adoc}      |   21 +-
 ...i-best-practice-exception-as-last-argument.adoc |   49 +
 .../modules/ROOT/partials/manual/api-intro.adoc    |   72 +
 .../ROOT/partials/manual/async-drawbacks.adoc      |   36 +
 .../ROOT/partials/manual/async-trade-offs.adoc     |   75 +
 .../manual/garbagefree-intro.adoc}                 |   12 +-
 .../manual/layouts-location-information.adoc       |   61 +
 .../manual/systemproperties/properties-async.adoc  |    4 +-
 .../properties-configuration-factory.adoc          |    2 +-
 .../properties-garbage-collection.adoc             |    4 +-
 .../systemproperties/properties-log-event.adoc     |    6 +-
 .../properties-logger-context.adoc                 |    2 +-
 .../systemproperties/properties-message.adoc       |    6 +-
 .../properties-thread-context.adoc                 |   10 +-
 ...es-message.adoc => premature-optimization.adoc} |   22 +-
 .../ROOT/partials/properties-async-logger.adoc     |  153 ++
 .../partials/properties-garbage-collection.adoc    |  148 ++
 .../modules/ROOT/partials/properties-meta.adoc     |   52 +
 .../ROOT/partials/properties-thread-context.adoc   |  101 ++
 src/site/resources/.htaccess                       |   21 -
 567 files changed, 3657 insertions(+), 43068 deletions(-)

diff --cc src/site/antora/modules/ROOT/pages/manual/appenders.adoc
index 3552b70f77,dd1cbb6c49..bffb31d569
--- a/src/site/antora/modules/ROOT/pages/manual/appenders.adoc
+++ b/src/site/antora/modules/ROOT/pages/manual/appenders.adoc
@@@ -116,14 -151,13 +151,13 @@@ type of `BlockingQueue` to use. See lin
  documentation] for more details.
  |=======================================================================
  
- There are also a few system properties that can be used to maintain
- application throughput even when the underlying appender cannot keep up
- with the logging rate and the queue is filling up. See the details for
- system properties
- 
xref:manual/systemproperties.adoc#log4j.async.queueFullPolicy.type[`log4j.async.queueFullPolicy.type`
- and `log4j2.DiscardThreshold`].
+ There are also a few system properties that can be used to maintain 
application throughput even when the underlying appender cannot keep up with 
the logging rate and the queue is filling up.
+ See the details for system properties
 
-xref:manual/systemproperties.adoc#log4j2.asyncQueueFullPolicy[`log4j2.asyncQueueFullPolicy`]
++xref:manual/systemproperties.adoc#log4j.async.queueFullPolicy.type[`log4j.async.queueFullPolicy.type`]
+ and
 
-xref:manual/systemproperties.adoc#log4j2.discardThreshold[`log4j2.DiscardThreshold`].
++xref:manual/systemproperties.adoc#log4j.async.queueFullPolicy.discardThreshold[`log4j.async.queueFullPolicy.discardThreshold`].
  
- A typical AsyncAppender configuration might look like:
+ A typical AsyncAppender configuration might look like this:
  
  [source,xml]
  ----
@@@ -197,12 -231,151 +231,12 @@@ attribute from AsyncAppender as `Linked
  maximum capacity.
  |=======================================================================
  
- [#consoleappender]
- == ConsoleAppender
 -[#CassandraAppender]
 -== CassandraAppender
 -
 -The CassandraAppender writes its output to an 
https://cassandra.apache.org/[Apache Cassandra]
 -database.
 -A keyspace and table must be configured ahead of time, and the columns of 
that table are mapped in a configuration file.
 -Each column can specify either a 
https://logging.apache.org/log4j/2.x/manual/layouts.html#PatternLayout[StringLayout]
 (e.g., a PatternLayout) along with an optional conversion type, or only a 
conversion type for `org.apache.logging.log4j.spi.ThreadContextMap` or
 -`org.apache.logging.log4j.spi.ThreadContextStack` to store the MDC or NDC in 
a map or list column respectively.
 -A conversion type compatible with `java.util.Date` will use the log event 
timestamp converted to that type (e.g., use `java.util.Date` to fill a
 -`timestamp` column type in Cassandra).
 -
 -.CassandraAppender Parameters
 -[cols="1,1,3",options="header"]
 -|===
 -| Parameter Name | Type | Description
 -
 -| batched
 -| boolean
 -| Whether or not to use batch statements to write log messages to Cassandra. 
By default, this is `false`.
 -
 -| batchType
 -| 
https://docs.datastax.com/en/drivers/java/3.0/com/datastax/driver/core/BatchStatement.Type.html[BatchStatement.Type]
 -| The batch type to use when using batched writes. By default, this is 
`LOGGED`.
 -
 -| bufferSize
 -| int
 -| The number of log messages to buffer or batch before writing. By default, 
no buffering is done.
 -
 -| clusterName
 -| String
 -| The name of the Cassandra cluster to connect to.
 -
 -| columns
 -| ColumnMapping[]
 -| A list of column mapping configurations. Each column must specify a column 
name. Each column can
 -have a conversion type specified by its fully qualified class name. By 
default, the conversion type is
 -`String`. If the configured type is assignment-compatible with
 -ReadOnlyStringMap /
 -ThreadContextMap or
 -ThreadContextStack,
 -then that column will be populated with the MDC or NDC respectively. If the 
configured type is
 -assignment-compatible with `java.util.Date`, then the log timestamp will be 
converted to
 -that configured date type. If a `literal` attribute is given, then its value 
will be used as
 -is in the `INSERT` query without any escaping. Otherwise, the layout or 
pattern specified
 -will be converted into the configured type and stored in that column.
 -
 -| contactPoints
 -| SocketAddress[]
 -| A list of hosts and ports of Cassandra nodes to connect to. These must be 
valid hostnames or IP
 -addresses. By default, if a port is not specified for a host or it is set to 
0, then the default
 -Cassandra port of 9042 will be used. By default, `localhost:9042` will be 
used.
 -
 -| filter
 -| Filter
 -| A Filter to determine if the event should be handled by this Appender. More 
than one Filter may be used
 -by using a CompositeFilter.
 -
 -| ignoreExceptions
 -| boolean
 -| The default is `true`, causing exceptions encountered while appending 
events to be
 -internally logged and then ignored. When set to `false` exceptions will be 
propagated to the
 -caller, instead. You must set this to `false` when wrapping this Appender in a
 -FailoverAppender.
 -
 -| keyspace
 -| String
 -| The name of the keyspace containing the table that log messages will be 
written to.
 -
 -| name
 -| String
 -| The name of the Appender.
 -
 -| password
 -| String
 -| The password to use (along with the username) to connect to Cassandra.
 -
 -| table
 -| String
 -| The name of the table to write log messages to.
 -
 -| useClockForTimestampGenerator
 -| boolean
 -| Whether or not to use the configured 
`org.apache.logging.log4j.core.util.Clock` as a
 -TimestampGenerator. By default, this is `false`.
 -
 -| username
 -| String
 -| The username to use to connect to Cassandra. By default, no username or 
password is used.
 -
 -| useTls
 -| boolean
 -| Whether or not to use TLS/SSL to connect to Cassandra. This is `false` by 
default.
 -|===
 -
 -Here is an example `CassandraAppender` configuration:
 -
 -[source,xml]
 -----
 -<Configuration name="CassandraAppenderTest">
 -  <Appenders>
 -    <Cassandra name="Cassandra" clusterName="Test Cluster" keyspace="test" 
table="logs" bufferSize="10" batched="true">
 -      <SocketAddress host="localhost" port="9042"/>
 -      <ColumnMapping name="id" pattern="%uuid{TIME}" type="java.util.UUID"/>
 -      <ColumnMapping name="timeid" literal="now()"/>
 -      <ColumnMapping name="message" pattern="%message"/>
 -      <ColumnMapping name="level" pattern="%level"/>
 -      <ColumnMapping name="marker" pattern="%marker"/>
 -      <ColumnMapping name="logger" pattern="%logger"/>
 -      <ColumnMapping name="timestamp" type="java.util.Date"/>
 -      <ColumnMapping name="mdc" 
type="org.apache.logging.log4j.spi.ThreadContextMap"/>
 -      <ColumnMapping name="ndc" 
type="org.apache.logging.log4j.spi.ThreadContextStack"/>
 -    </Cassandra>
 -  </Appenders>
 -  <Loggers>
 -    <Logger name="org.apache.logging.log4j.cassandra" level="DEBUG">
 -      <AppenderRef ref="Cassandra"/>
 -    </Logger>
 -    <Root level="ERROR"/>
 -  </Loggers>
 -</Configuration>
 -----
 -
 -This example configuration uses the following table schema:
 -
 -[source,sql]
 -----
 -CREATE TABLE logs (
 -    id timeuuid PRIMARY KEY,
 -    timeid timeuuid,
 -    message text,
 -    level text,
 -    marker text,
 -    logger text,
 -    timestamp timestamp,
 -    mdc map<text,text>,
 -    ndc list<text>
 -);
 -----
 -
+ [id=consoleappender]
+ == [[ConsoleAppender]] ConsoleAppender
  
  As one might expect, the ConsoleAppender writes its output to either
- System.out or System.err with System.out being the default target. A
- Layout must be provided to format the LogEvent.
+ `System.out` or `System.err` with `System.out` being the default target.
+ A Layout must be provided to format the LogEvent.
  
  .ConsoleAppender Parameters
  [cols="20%,20%,60%",options="header",]
@@@ -714,28 -862,20 +723,22 @@@ A sample FlumeAppender configuration th
  As of Log4j 2.11.0, JDBC support has moved from the existing module
  `log4j-core` to the new module `log4j-jdbc`.
  
 -The JDBC Appender configured with a `DataSource` requires JNDI support so as 
of release 2.17.1 this appender will not function unless 
`log4j2.enableJndiJdbc=true` is configured as a system property or environment 
variable.
 -See the xref:manual/configuration.adoc#enableJndiJdbc[enableJndiJdbc] system 
property.
 +The JDBC Appender configured with a `DataSource` requires JNDI support so as 
of release 2.17.1
- this appender will not function unless `log4j2.enableJndiJdbc=true` is 
configured as a system property
++this appender will not function unless `log4j.jndi.enableJdbc=true` is 
configured as a system property
 +or environment variable. See the 
xref:manual/systemproperties.adoc#log4j.jndi.enableJdbc[log4j.jndi.enableJdbc] 
system
 +property.
  
- The JDBCAppender writes log events to a relational database table using
- standard JDBC. It can be configured to obtain JDBC connections using a
- JNDI `DataSource` or a custom factory method. Whichever approach you
- take, it *_must_* be backed by a connection pool. Otherwise, logging
- performance will suffer greatly. If batch statements are supported by
- the configured JDBC driver and a `bufferSize` is configured to be a
- positive number, then log events will be batched. Note that as of Log4j
- 2.8, there are two ways to configure log event to column mappings: the
- original `ColumnConfig` style that only allows strings and timestamps,
- and the new `ColumnMapping` plugin that uses Log4j's built-in type
- conversion to allow for more data types.
- 
- To get off the ground quickly during development, an alternative to
- using a connection source based on JNDI is to use the non-pooling
- `DriverManager` connection source. This connection source uses a JDBC
- connection string, a user name, and a password. Optionally, you can also
- use properties.
+ The JDBCAppender writes log events to a relational database table using 
standard JDBC.
+ It can be configured to obtain JDBC connections using a JNDI `DataSource` or 
a custom factory method.
+ Whichever approach you take, it *_must_* be backed by a connection pool.
+ Otherwise, logging performance will suffer greatly.
+ If batch statements are supported by the configured JDBC driver and a 
`bufferSize` is configured to be a positive number, then log events will be 
batched.
+ Note that as of Log4j 2.8, there are two ways to configure log event to 
column mappings: the original `ColumnConfig` style that only allows strings and 
timestamps, and the new `ColumnMapping` plugin that uses Log4j's built-in type 
conversion to allow for more data types.
+ 
+ To get off the ground quickly during development, an alternative to using a 
connection source based on JNDI is to use the non-pooling
+ `DriverManager` connection source.
+ This connection source uses a JDBC connection string, a username, and a 
password.
+ Optionally, you can also use properties.
  
  .JDBCAppender Parameters
  [cols="20%,20%,60%",options="header",]
diff --cc src/site/antora/modules/ROOT/pages/manual/architecture.adoc
index 9572238869,7e0dc4717c..7f9ee76b1b
--- a/src/site/antora/modules/ROOT/pages/manual/architecture.adoc
+++ b/src/site/antora/modules/ROOT/pages/manual/architecture.adoc
@@@ -98,8 -98,8 +98,8 @@@ xref:manual/logsep.adoc[Log Separation
  Every LoggerContext has an active
  
link:../javadoc/log4j-core/org/apache/logging/log4j/core/config/Configuration.html[`Configuration`].
  The Configuration contains all the Appenders, context-wide Filters,
- LoggerConfigs and contains the reference to the StrSubstitutor. During
- reconfiguration two Configuration objects will exist. Once all Loggers
 -LoggerConfigs and contains the reference to the StrSubstitutor. 
++LoggerConfigs and contains the reference to the StrSubstitutor.
+ During reconfiguration, two Configuration objects will exist. Once all Loggers
  have been redirected to the new Configuration, the old Configuration
  will be stopped and discarded.
  
@@@ -280,8 -280,8 +280,8 @@@ its level from LoggerConfig X. Logger X
  it doesn't have a LoggerConfig with a name that exactly matches. It too
  inherits its logging level from LoggerConfig X.
  
- The table below illustrates how Level filtering works. In the table, the
- vertical header shows the Level of the LogEvent, while the horizontal
 -The table below illustrates how Level filtering works. In the table, 
++The table below illustrates how Level filtering works. In the table,
+ the vertical header shows the Level of the LogEvent, while the horizontal
  header shows the Level associated with the appropriate LoggerConfig. The
  intersection identifies whether the LogEvent would be allowed to pass
  for further processing (Yes) or discarded (No).


Reply via email to