LOG4J2-1512 merged
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/350887ea Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/350887ea Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/350887ea Branch: refs/heads/LOG4J2-1010&LOG4J2-1447-injectable-contextdata&better-datastructure Commit: 350887ea8cdc309dd9813c028ae65f75f61e2913 Parents: 04ac7e2 0c9c9f3 Author: rpopma <rpo...@apache.org> Authored: Sat Aug 27 17:19:12 2016 +0900 Committer: rpopma <rpo...@apache.org> Committed: Sat Aug 27 17:19:12 2016 +0900 ---------------------------------------------------------------------- .../config/Log4j1ConfigurationFactory.java | 297 +-------------- .../log4j/config/Log4j1ConfigurationParser.java | 327 ++++++++++++++++ .../apache/log4j/layout/Log4j1XmlLayout.java | 63 +++- .../org/apache/log4j/layout/TTCCLayout.java | 99 ----- .../pattern/Log4j1MdcPatternConverter.java | 91 +++++ .../pattern/Log4j1NdcPatternConverter.java | 63 ++++ .../apache/log4j/BasicConfigurationFactory.java | 13 +- .../config/Log4j1ConfigurationFactoryTest.java | 67 ++-- .../log4j/layout/Log4j1XmlLayoutTest.java | 40 +- .../org/apache/log4j/layout/TTCCLayoutTest.java | 82 ---- .../pattern/Log4j1MdcPatternConverterTest.java | 79 ++++ .../pattern/Log4j1NdcPatternConverterTest.java | 74 ++++ ...g4j-console-EnhancedPatternLayout.properties | 3 +- .../log4j-console-HtmlLayout.properties | 3 +- .../log4j-console-PatternLayout.properties | 1 - .../log4j-console-SimpleLayout.properties | 1 - .../log4j-console-TTCCLayout.properties | 3 +- .../log4j-console-XmlLayout.properties | 3 +- .../log4j-file-SimpleLayout.properties | 17 + .../logging/log4j/CloseableThreadContext.java | 2 +- .../java/org/apache/logging/log4j/Logger.java | 20 + .../org/apache/logging/log4j/ThreadContext.java | 66 ++-- .../log4j/spi/DefaultThreadContextMap.java | 18 +- .../logging/log4j/spi/ThreadContextMap.java | 63 ++-- .../logging/log4j/spi/ThreadContextMap2.java | 40 ++ .../logging/log4j/spi/ThreadContextStack.java | 1 + .../log4j/CloseableThreadContextTest.java | 11 +- .../logging/log4j/ThreadContextHolder.java | 79 ++++ .../apache/logging/log4j/ThreadContextTest.java | 21 ++ .../log4j/junit/ThreadContextMapRule.java | 37 ++ .../logging/log4j/junit/ThreadContextRule.java | 78 ++++ .../log4j/junit/ThreadContextStackRule.java | 37 ++ .../log4j/spi/DefaultThreadContextMapTest.java | 26 +- .../logging/log4j/core/AbstractLifeCycle.java | 8 + .../apache/logging/log4j/core/LifeCycle.java | 13 + .../logging/log4j/core/LoggerContext.java | 140 ++++++- .../log4j/core/appender/AbstractManager.java | 19 +- .../core/appender/ConfigurationFactoryData.java | 50 +++ .../log4j/core/appender/ConsoleAppender.java | 4 - .../log4j/core/appender/FileAppender.java | 28 +- .../log4j/core/appender/FileManager.java | 58 +-- .../core/appender/OutputStreamManager.java | 26 +- .../core/appender/RandomAccessFileAppender.java | 2 +- .../core/appender/RandomAccessFileManager.java | 27 +- .../core/appender/RollingFileAppender.java | 372 ++++++++++++------- .../RollingRandomAccessFileAppender.java | 2 +- .../log4j/core/appender/WriterManager.java | 2 +- .../appender/db/AbstractDatabaseManager.java | 2 +- .../log4j/core/appender/mom/JmsManager.java | 2 +- .../core/appender/mom/jeromq/JeroMqManager.java | 2 +- .../core/appender/mom/kafka/KafkaAppender.java | 7 +- .../core/appender/mom/kafka/KafkaManager.java | 185 +++++---- .../appender/rolling/RollingFileManager.java | 68 +++- .../rolling/RollingRandomAccessFileManager.java | 32 +- .../core/appender/rolling/TriggeringPolicy.java | 2 +- .../core/async/AsyncLoggerConfigDisruptor.java | 3 +- .../log4j/core/async/AsyncLoggerDisruptor.java | 3 +- .../log4j/core/async/DaemonThreadFactory.java | 53 --- .../log4j/core/async/RingBufferLogEvent.java | 4 +- .../core/config/AbstractConfiguration.java | 42 ++- .../log4j/core/config/AppenderControl.java | 3 +- .../log4j/core/config/Configuration.java | 8 + .../log4j/core/config/ConfigurationFactory.java | 86 +++-- .../core/config/ConfigurationScheduler.java | 23 +- .../core/config/ConfiguratonFileWatcher.java | 10 +- .../logging/log4j/core/config/Configurator.java | 36 +- .../log4j/core/config/DefaultConfiguration.java | 2 +- .../logging/log4j/core/config/LoggerConfig.java | 36 +- .../log4j/core/config/NullConfiguration.java | 2 +- .../builder/api/ConfigurationBuilder.java | 20 +- .../config/builder/impl/BuiltConfiguration.java | 5 +- .../impl/DefaultConfigurationBuilder.java | 53 ++- .../DefaultCustomLevelComponentBuilder.java | 2 +- .../composite/CompositeConfiguration.java | 4 +- .../config/composite/DefaultMergeStrategy.java | 1 + .../core/config/json/JsonConfiguration.java | 14 +- .../config/json/JsonConfigurationFactory.java | 5 +- .../config/plugins/PluginBuilderFactory.java | 1 + .../config/plugins/PluginConfiguration.java | 1 + .../core/config/plugins/PluginFactory.java | 2 +- .../log4j/core/config/plugins/PluginNode.java | 1 + .../core/config/plugins/util/PluginBuilder.java | 2 - .../config/plugins/util/PluginRegistry.java | 1 - .../core/config/plugins/util/ResolverUtil.java | 13 +- .../properties/PropertiesConfiguration.java | 8 +- .../PropertiesConfigurationBuilder.java | 18 +- .../PropertiesConfigurationFactory.java | 13 +- .../log4j/core/config/xml/XmlConfiguration.java | 47 ++- .../config/xml/XmlConfigurationFactory.java | 6 +- .../core/config/yaml/YamlConfiguration.java | 7 +- .../config/yaml/YamlConfigurationFactory.java | 5 +- .../core/filter/DynamicThresholdFilter.java | 85 ++++- .../log4j/core/impl/Log4jContextFactory.java | 6 +- .../log4j/core/jmx/LoggerContextAdmin.java | 4 +- .../apache/logging/log4j/core/jmx/Server.java | 19 +- .../logging/log4j/core/layout/HtmlLayout.java | 14 + .../log4j/core/layout/PatternLayout.java | 6 +- .../logging/log4j/core/net/JndiManager.java | 2 +- .../logging/log4j/core/net/SmtpManager.java | 2 +- .../core/net/server/AbstractSocketServer.java | 7 +- .../log4j/core/net/server/JmsServer.java | 10 +- .../core/pattern/MessagePatternConverter.java | 45 ++- .../log4j/core/script/ScriptManager.java | 1 - .../core/selector/BasicContextSelector.java | 131 +++---- .../logging/log4j/core/util/ArrayUtils.java | 124 +++++++ .../apache/logging/log4j/core/util/Assert.java | 38 -- .../logging/log4j/core/util/Constants.java | 11 - .../util/DefaultShutdownCallbackRegistry.java | 7 + .../logging/log4j/core/util/Log4jThread.java | 138 +++---- .../log4j/core/util/Log4jThreadFactory.java | 99 +++++ .../log4j/core/BasicConfigurationFactory.java | 6 +- .../logging/log4j/core/StrictXmlConfigTest.java | 1 - .../log4j/core/appender/FileAppenderTest.java | 48 +-- .../core/appender/OutputStreamAppenderTest.java | 2 +- .../appender/RandomAccessFileManagerTest.java | 18 +- .../ContextStackJsonAttributeConverterTest.java | 19 +- .../rolling/OnStartupTriggeringPolicyTest.java | 10 +- .../RandomRollingAppenderOnStartupTest.java | 2 +- .../RollingAppenderCronOnceADayTest.java | 125 +++++++ .../rolling/RollingAppenderCronTest.java | 2 +- .../RollingAppenderCustomDeleteActionTest.java | 2 +- ...lingAppenderDeleteAccumulatedCount1Test.java | 2 +- ...lingAppenderDeleteAccumulatedCount2Test.java | 2 +- ...ollingAppenderDeleteAccumulatedSizeTest.java | 2 +- .../RollingAppenderDeleteMaxDepthTest.java | 2 +- .../RollingAppenderDeleteNestedTest.java | 2 +- .../RollingAppenderDeleteScriptFri13thTest.java | 2 +- .../RollingAppenderDeleteScriptTest.java | 2 +- ...ollingAppenderNoUnconditionalDeleteTest.java | 2 +- .../rolling/RollingAppenderOnStartupTest.java | 2 +- .../rolling/RollingAppenderSizeTest.java | 45 ++- .../rolling/RollingAppenderTimeAndSizeTest.java | 4 +- .../rolling/RollingAppenderTimeTest.java | 2 +- .../rolling/RollingFileAppenderAccessTest.java | 61 +-- ...RandomAccessFileManagerHeaderFooterTest.java | 3 +- .../RollingRandomAccessFileManagerTest.java | 24 +- .../core/async/RingBufferLogEventTest.java | 18 +- .../core/config/CompositeConfigurationTest.java | 34 +- .../log4j/core/config/ConfigurationTest.java | 6 + .../builder/ConfigurationAssemblerTest.java | 35 +- .../builder/CustomConfigurationFactory.java | 18 +- .../plugins/util/PluginManagerPackagesTest.java | 2 +- .../util/ResolverUtilCustomProtocolTest.java | 208 +++++++++++ .../config/plugins/util/ResolverUtilTest.java | 126 +++++-- .../core/filter/DynamicThresholdFilterTest.java | 21 ++ .../core/layout/CsvLogEventLayoutTest.java | 8 +- .../core/layout/CsvParameterLayoutTest.java | 72 ++-- .../log4j/core/layout/GelfLayoutTest.java | 12 +- .../log4j/core/layout/HtmlLayoutTest.java | 7 +- .../layout/PatternLayoutLookupDateTest.java | 28 ++ .../layout/PatternLayoutNoLookupDateTest.java | 26 ++ .../log4j/core/layout/PatternLayoutTest.java | 18 +- .../log4j/core/layout/Rfc5424LayoutTest.java | 21 +- .../log4j/core/layout/SerializedLayoutTest.java | 7 +- .../log4j/core/layout/SyslogLayoutTest.java | 9 +- .../log4j/core/layout/XmlLayoutTest.java | 7 +- .../core/pattern/MdcPatternConverterTest.java | 15 +- .../pattern/MessagePatternConverterTest.java | 197 +++++----- .../core/pattern/NdcPatternConverterTest.java | 14 +- .../core/pattern/RegexReplacementTest.java | 17 +- .../logging/log4j/junit/LoggerContextRule.java | 27 +- .../junit/URLStreamHandlerFactoryRule.java | 96 +++++ .../log4j-comp-logger-attr-override.json | 38 ++ .../test/resources/log4j-comp-logger-root.xml | 44 +++ .../src/test/resources/log4j-list-nolookups.xml | 29 ++ .../test/resources/log4j-rolling-7z-lazy.xml | 59 +++ .../test/resources/log4j-rolling-bzip2-lazy.xml | 60 +++ .../resources/log4j-rolling-cron-once-a-day.xml | 47 +++ .../src/test/resources/log4j-rolling-cron.xml | 2 +- .../src/test/resources/log4j-rolling-cron2.xml | 2 +- .../resources/log4j-rolling-deflate-lazy.xml | 60 +++ .../test/resources/log4j-rolling-gz-lazy.xml | 59 +++ .../resources/log4j-rolling-pack200-lazy.xml | 60 +++ .../test/resources/log4j-rolling-xz-lazy.xml | 60 +++ .../test/resources/log4j-rolling-zip-lazy.xml | 60 +++ .../test/resources/log4j2-properties.properties | 1 + .../flume/appender/AbstractFlumeManager.java | 2 +- .../flume/appender/FlumePersistentManager.java | 30 +- log4j-nosql/pom.xml | 5 + .../appender/NoSqlDatabaseManagerTest.java | 5 + .../configuration/CustomConfiguration.java | 13 +- .../CustomConfigurationFactory.java | 12 +- .../org/apache/logging/slf4j/MDCContextMap.java | 12 +- .../org/apache/logging/log4j/web/WebLookup.java | 8 - pom.xml | 4 +- src/changes/changes.xml | 107 +++++- src/site/site.xml | 2 + src/site/xdoc/manual/appenders.xml | 12 + src/site/xdoc/manual/configuration.xml.vm | 6 +- src/site/xdoc/manual/customconfig.xml | 10 +- src/site/xdoc/manual/extending.xml | 22 +- src/site/xdoc/manual/layouts.xml.vm | 12 +- 192 files changed, 4628 insertions(+), 1821 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/350887ea/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/XmlLayoutTest.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/350887ea/src/changes/changes.xml ---------------------------------------------------------------------- diff --cc src/changes/changes.xml index 4937e63,818f570..77ece3b --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@@ -24,9 -24,42 +24,45 @@@ </properties> <body> <release version="2.7" date="2016-MM-DD" description="GA Release 2.7"> + <action issue="LOG4J2-1512" dev="mikes" type="add"> + Options to exclude stack trace from JSON, XML and YAML layouts. + </action> + <action issue="LOG4J2-1511" dev="ggregory" type="fix" due-to="Srikanth Surukuntu"> + DynamicThresholdFilter filters incorrectly when params are passed as individual arguments instead of varargs. + </action> + <action issue="LOG4J2-1548" dev="ggregory" type="fix"> + [CronTriggeringPolicy] ConfigurationScheduler schedules the task infinitely after first fire. + </action> + <action issue="LOG4J2-1506" dev="ggregory" type="fix" due-to="Johannes Schleger"> + Unregister JMX ignores log4j2.disable.jmx property. + </action> + <action issue="LOG4J2-1490" dev="ggregory" type="fix" due-to="Krzysztof Taborski, Gary Gregory"> + Log4j2 is creating empty log files. + </action> + <action issue="LOG4J2-1320" dev="ggregory" type="fix" due-to="Paresh Varke, Pierrick Hymbert, Gary Gregory"> + Custom plugins are not loaded, URL protocol vfs is not supported. + </action> + <action issue="LOG4J2-1541" dev="ggregory" type="fix"> + Fix file handle resource leak in XmlConfiguration.XmlConfiguration(ConfigurationSource). + </action> + <action issue="LOG4J2-1538" dev="ggregory" type="fix" due-to="Igor Karpov"> + Dynamic removal of filter may cause NPE. + </action> + <action issue="LOG4J2-1532" dev="ggregory" type="fix"> + Attributes are not merged properly in composite configurations. + </action> + <action issue="LOG4J2-1529" dev="mattsicker" type="fix" due-to="Sridevi Narra"> + Attributes are not merged properly in composite configurations. + </action> + <action issue="LOG4J2-1527" dev="rpopma" type="fix" due-to="Jose Leon"> + Prevent NPE in RingBufferLogEvent.getFormattedMessage() when used in web applications. + </action> + <action issue="LOG4J2-905" dev="ggregory" type="fix" due-to="Gary Gregory, Moritz Löser"> + Ability to disable (date) lookup completely, compatibility issues with other libraries like Camel. + </action> + <action issue="LOG4J2-1526" dev="mikes" type="fix"> + Possibility to set StatusLogger destination in ConfigurationBuilder. + </action> <action issue="LOG4J2-1448" dev="rpopma" type="fix" due-to="Keith Laban"> Allow comma separated agents, host list to be passed to FlumeAppender. </action> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/350887ea/src/site/xdoc/manual/layouts.xml.vm ----------------------------------------------------------------------