http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/19418b37/src/changes/changes.xml ---------------------------------------------------------------------- diff --cc src/changes/changes.xml index 6bd144c,d935048..2922511 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@@ -1,3090 -1,3096 +1,3099 @@@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- vi: set sw=2: --> -<!-- - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<document xmlns="http://maven.apache.org/changes/1.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/xsd/changes-1.0.0.xsd"> - <properties> - <title>Changes</title> - </properties> - <body> - <release version="2.7.1" date="2016-MM-DD" description="GA Release 2.7.1"> - <action issue="LOG4J2-1636" dev="ggregory" type="fix" due-to="Eldar Gabdullin"> - Console Appender does not pick up Oracle Java 8's sun.stdout.encoding and sun.stderr.encoding. - </action> - <action issue="LOG4J2-1639" dev="ggregory" type="fix" due-to="Sridhar Gopinath"> - Fix MemoryMappedFileAppender.createAppender() Javadoc for immediateFlush. - </action> - <action issue="LOG4J2-1641" dev="ggregory" type="update"> - Update JeroMQ from 0.3.5 to 0.3.6. - </action> - </release> - <release version="2.7" date="2016-10-02" description="GA Release 2.7"> - <action issue="LOG4J2-1618" dev="rpopma" type="fix" due-to="Raman Gupta"> - Fixed ClassCastException when using JUL logging during shutdown. - </action> - <action issue="LOG4J2-1620" dev="ggregory" type="fix" due-to="Sascha Scholz"> - 2.7-rc1: RollingFileAppender immediateFlush default value should be true, not false. - </action> - <action issue="LOG4J2-1611" dev="rpopma" type="fix"> - Improved performance of context data injector for web applications to be on par with standalone applications. - </action> - <action issue="LOG4J2-1591" dev="rpopma" type="fix"> - Introduced new interface LifeCycle2 with stop(long,TimeUnit) method to avoid breaking backwards compatibility with new Configurator.shutdown(LoggerContext, long, TimeUnit) API. - </action> - <action issue="LOG4J2-1590" dev="rpopma" type="fix"> - Fixed issue with filters extending AbstractFilter that did not override methods with unrolled varargs. - </action> - <action issue="LOG4J2-1583" dev="rpopma" type="fix" due-to="Larry West"> - Fixed scrambled log messages triggered by nested logging from toString() method of a logging parameter object. - </action> - <action issue="LOG4J2-1259" dev="ggregory" type="fix" due-to="Misagh Moayyed, Steffen Offermann"> - Log4j threads are no longer leaking on Tomcat shutdown. - </action> - <action issue="LOG4J2-1051" dev="rpopma" type="fix" due-to="Lukasz Lenart"> - When starting on Google App Engine, Interpolator now suppresses the NoClassDefFoundError stack trace for the jvmrunargs lookup. - </action> - <action issue="LOG4J2-1582" dev="rpopma" type="fix"> - When initializing on platforms where JMX is not available, Interpolator component no longer prints stack trace for warning messages. - </action> - <action issue="LOG4J2-1581" dev="rpopma" type="fix"> - Unregistering JMX components no longer prints a stack trace when the MBean has already been unregistered. - </action> - <action issue="LOG4J2-1313" dev="rpopma" type="fix" due-to="Philipp Knobel, Leon Finker"> - Support Property values to be specified in configuration as a value attribute as well as an element. - </action> - <action issue="LOG4J2-1575" dev="rpopma" type="fix"> - (GC) LoggerConfig now stores configuration properties in a List, not a Map to prevent creating temporary Iterator objects. Added method LoggerConfig#getPropertyList(), deprecated method #getProperties(). - </action> - <action issue="LOG4J2-1457" dev="mattsicker" type="fix" due-to="Leon Finker"> - Fixed class loader deadlock when using async logging and extended stack trace pattern. - </action> - <action issue="LOG4J2-1563" dev="ggregory" type="fix" due-to="Jason Tedor"> - Fix to prevent Log4j 2.6.2 and higher from losing exceptions when a security manager is present. - </action> - <action issue="LOG4J2-1530" dev="mikes" type="fix"> - Fixed issue where LogEvent.getContextStack() returned null. - </action> - <action issue="LOG4J2-1518" dev="rpopma" type="fix" due-to="Leon Finker"> - Prevent deadlock in Async Loggers when queue is full and logged Object's toString() logs another message. - </action> - <action issue="LOG4J2-1542" dev="rpopma" type="fix" due-to="Rogério Lecarião Leite"> - Prevent ArrayIndexOutOfBoundsException in ParameterizedMessage.formatTo for single-char or empty messages. - </action> - <action issue="LOG4J2-1549" dev="mikes" type="fix" due-to="Jason Bedard"> - Fixed issue where AsyncLoggerContextSelector+PropertiesConfigurationBuilder defaulted to includeLocation=true. - </action> - <action issue="LOG4J2-1562" dev="ggregory" type="fix"> - Prevent SocketAppender memory usage from growing unbounded if it cannot connect to a server. - </action> - <action issue="LOG4J2-1559" dev="ggregory" type="fix" due-to="Andrey Plotkin"> - Prevent NPE in Level.isInRange. - </action> - <action issue="LOG4J2-1511" dev="ggregory" type="fix" due-to="Srikanth Surukuntu"> - DynamicThresholdFilter filtered incorrectly when params were passed as individual arguments instead of varargs. - </action> - <action issue="LOG4J2-1548" dev="ggregory" type="fix"> - [CronTriggeringPolicy] ConfigurationScheduler scheduled the task infinitely after first fire. - </action> - <action issue="LOG4J2-1506" dev="ggregory" type="fix" due-to="Johannes Schleger"> - Log4j should not unregister JMX MBeans when log4j2.disable.jmx property is true. - </action> - <action issue="LOG4J2-1490" dev="ggregory" type="fix" due-to="Krzysztof Taborski"> - Log4j2 should postpone creating log file until the appender actually receives an event. - </action> - <action issue="LOG4J2-1320" dev="ggregory" type="fix" due-to="Paresh Varke, Pierrick Hymbert"> - Support loading custom plugins from jar files and directories whose classpath entries use the "vfs" URL protocol. - </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"> - Prevent NPE when dynamically removing filters. - </action> - <action issue="LOG4J2-1532" dev="ggregory" type="fix"> - Attributes were not merged properly in composite configurations. - </action> - <action issue="LOG4J2-1529" dev="mattsicker" type="fix" due-to="Sridevi Narra"> - Attributes were 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="Moritz Löser"> - Added ability to disable (date) lookup completely for compatibility with other libraries like Camel. - </action> - <action issue="LOG4J2-1526" dev="mikes" type="fix"> - Added support for setting 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> - <action issue="LOG4J2-1500" dev="ggregory" type="fix" due-to="Jose Leon"> - Merging configurations failed with an NPE when comparing Nodes with different attributes. - </action> - <action issue="LOG4J2-1482" dev="ggregory" type="fix" due-to="Sumit Singhal"> - Fixed improper header in CsvParameterLayout. - </action> - <action issue="LOG4J2-1199" dev="rpopma" type="fix"> - Documented that JVM Input Arguments Lookup (JMX) is not available on Google App Engine. - </action> - <action issue="LOG4J2-1438" dev="rpopma" type="fix"> - (GC) Added method getParameter() to ObjectMessage (and ReusableObjectMessage). - </action> - <action issue="LOG4J2-1488" dev="rpopma" type="fix" due-to="Richard Zschech"> - (GC) Fixed ISO8601 %date conversion pattern with a period '.' separator for milliseconds is now garbage free. - </action> - <action issue="LOG4J2-1489" dev="rpopma" type="fix" due-to="Richard Zschech"> - (GC) Fixed %date conversion patterns with a timezone parameter are now garbage free. - </action> - <action issue="LOG4J2-1279" dev="rpopma" type="fix" due-to="Tony Baines"> - Prevent NullPointerException in FastDateParser$TimeZoneStrategy. - </action> - <action issue="LOG4J2-1341" dev="rpopma" type="fix" due-to="Richard Zschech"> - (GC) HighlightConverter and StyleConverter are now GC-free. - </action> - <action issue="LOG4J2-1467" dev="rpopma, ggregory" type="fix" due-to="Ralf, Gary Gregory"> - [OSGi] Fixed missing import package. - </action> - <action issue="LOG4J2-351" dev="rpopma, ggregory" type="fix" due-to="Roland Weiglhofer"> - [OSGi] Fixed wrong Fragment-Host in manifest files. - </action> - <action issue="LOG4J2-1313" dev="rpopma" type="fix" due-to="Philipp Knobel"> - Properties declared in configuration can now have their value either in the element body or in an attribute named "value". - </action> - <action issue="LOG4J2-1235" dev="ggregory" type="fix" due-to="Niranjan Rao, Sascha Scholz, Aleksey Zvolinsky"> - org.apache.logging.log4j.core.appender.routing.IdlePurgePolicy was not working correctly. - </action> - <action issue="LOG4J2-1502" dev="ggregory" type="fix" due-to="Sumit Singhal"> - Fixed issue where CsvParameterLayout and CsvLogEventLayout inserted NUL characters if data starts with {, (, [ or " - </action> - <action issue="LOG4J2-1573" dev="ggregory" type="fix" due-to="Steffen Offermann"> - Layout is no longer optional. - </action> - <action issue="LOG4J2-1608" dev="ggregory" type="fix"> - ServletAppender does not provide throwable object to ServletContext. - </action> - <action issue="LOG4J2-1599" dev="ggregory" type="fix"> - Prevent potential NPE in org.apache.logging.log4j.message.ParameterFormatter.formatMessage3(StringBuilder, char[], int, Object[], int, int[]). - </action> - <action issue="LOG4J2-1600" dev="ggregory" type="fix"> - Prevent potential NPE due to org.apache.logging.log4j.core.layout.MarkerPatternSelector.createSelector(PatternMatch[], String, boolean, boolean, Configuration). - </action> - <action issue="LOG4J2-1601" dev="ggregory" type="fix"> - Prevent potential NPE due to org.apache.logging.log4j.core.layout.ScriptPatternSelector.createSelector(AbstractScript, PatternMatch[], String, boolean, boolean, Configuration). - </action> - <action issue="LOG4J2-1602" dev="ggregory" type="fix"> - Prevent potential NPE in org.apache.logging.log4j.core.util.datetime.FormatCache.MultipartKey.equals(Object) when object is null. - </action> - <action issue="LOG4J2-1603" dev="ggregory" type="fix"> - Redo hashCode() and equals() methods in org.apache.logging.log4j.core.net.ssl classes. - </action> - <action issue="LOG4J2-1610" dev="ggregory" type="fix" due-to="Shubhankar"> - Add targetNamespace to log4j-config.xsd. GitHub #43. - </action> - <action issue="LOG4J2-1619" dev="ggregory" type="fix"> - new Log4jLogEvent().toString() throws an NPE. - </action> - <action issue="LOG4J2-1578" dev="ggregory" type="add"> - RoutingAppender can be configured with scripts. Add Script in a Routes element. - </action> - <action issue="LOG4J2-1597" dev="ggregory" type="add"> - Add a ScriptAppenderSelector to create an Appender specified by a Script. - </action> - <action issue="LOG4J2-1349" dev="rpopma" type="add"> - (GC) Added support for garbage-free ThreadContext map. Disabled by default, users need to enable this explicitly. - </action> - <action issue="LOG4J2-1447" dev="rpopma" type="add"> - (GC) Changed LogEvent's internal data structure for context data to be garbage-free. Added method LogEvent#getContextData(), deprecated method #getContextMap(). - </action> - <action issue="LOG4J2-1010" dev="rpopma" type="add" due-to="Mikael StÃ¥ldal"> - Users can now inject context data from other sources than ThreadContext. Values can be any Object, not just Strings. - </action> - <action issue="LOG4J2-1568" dev="mattsicker" type="add"> - Added support for java.util.concurrent.LinkedTransferQueue to AsyncAppender. - </action> - <action issue="LOG4J2-1430" dev="mattsicker" type="add" due-to="John Cairns"> - Added optional support for Conversant DisruptorBlockingQueue in AsyncAppender. - </action> - <action issue="LOG4J2-1439" dev="mattsicker" type="add" due-to="Anthony Maire"> - Added optional support for JCTools MPSC bounded lock-free queue in AsyncAppender. - </action> - <action issue="LOG4J2-1558" dev="ggregory" type="add"> - SocketAppender now supports IO buffering. - </action> - <action issue="LOG4J2-1557" dev="ggregory" type="add"> - Add a Builder for the SocketAppender (deprecates factory method). - </action> - <action issue="LOG4J2-1609" dev="ggregory" type="add"> - Add a Builder to ServletAppender and deprecate factory method. - </action> - <action issue="LOG4J2-1553" dev="ggregory" type="add"> - AbstractManager now implements AutoCloseable. - </action> - <action issue="LOG4J2-1528" dev="mikes" type="add"> - Added ability to generate Log4j 2-style XML configuration file from ConfigurationBuilder. - </action> - <action issue="LOG4J2-1181" dev="mikes" type="add"> - Added Logging API for Scala 2.10 and 2.11. - </action> - <action issue="LOG4J2-1512" dev="mikes" type="add"> - Added options to exclude stack trace from JSON, XML and YAML layouts. - </action> - <action issue="LOG4J2-1539" dev="ggregory" type="add"> - Added Core API Configurator.shutdown(LoggerContext, long, TimeUnit). - </action> - <action issue="LOG4J2-1501" dev="ggregory" type="add"> - FileAppender is now able to create files on-demand. - </action> - <action issue="LOG4J2-1504" dev="ggregory" type="add"> - RollingFileAppender is now able to create files on-demand. - </action> - <action issue="LOG4J2-1471" dev="ggregory" type="add"> - [PatternLayout] Add an ANSI option to %xThrowable. - </action> - <action issue="LOG4J2-1472" dev="ggregory" type="add"> - org.apache.logging.log4j.core.LoggerContext now implements Closeable. - </action> - <action issue="LOG4J2-1458" dev="ggregory" type="add"> - [PatternLayout] Add an ANSI option to %message. - </action> - <action issue="LOG4J2-1505" dev="ggregory" type="add"> - Create a Builder for the FileAppender plugin to facilitate adding attributes in the future. - </action> - <action issue="LOG4J2-1507" dev="ggregory" type="add"> - Allow Builders to be completely generic. - </action> - <action issue="LOG4J2-1508" dev="ggregory" type="add"> - Allow a Builder to subclass another Builder. - </action> - <action issue="LOG4J2-1516" dev="rpopma" type="add" due-to="Gary Gregory"> - Add ThreadContextMap2 interface supporting method putAll(Map<String, String>). - </action> - <action issue="LOG4J2-1519" dev="ggregory" type="add"> - Add ThreadContext.putAll(Map<String, String>). - </action> - <action issue="LOG4J2-1520" dev="ggregory" type="add"> - Add JUnit Rule implementations to manage the thread context. - </action> - <action issue="LOG4J2-1547" dev="ggregory" type="add"> - The Core AbstractConfiguration now tracks its LoggerContext and add Configuration.getLoggerContext(). - </action> - <action issue="LOG4J2-1540" dev="ggregory" type="add"> - The Core AbstractManager now tracks its LoggerContext. - </action> - <action issue="LOG4J2-1577" dev="ggregory" type="add"> - Add a Builder to the RoutingAppender and deprecate factory method. - </action> - <action issue="LOG4J2-1604" dev="ggregory" type="update" due-to="Colin Hillman"> - Log4j2 TcpSocketServer in background. - </action> - <action issue="LOG4J2-1574" dev="ggregory" type="update"> - Allow the RollingFileAppender to use default pattern layout. - </action> - <action issue="LOG4J2-1556" dev="ggregory" type="update"> - Custom Log4j threads now extend Log4jThread. - </action> - <action issue="LOG4J2-1605" dev="ggregory" type="update"> - Improve error messages for TcpSocketServer and UdpSocketServer. - </action> - <action issue="LOG4J2-1458" dev="ggregory" type="update"> - Updated Jackson from 2.7.5 to 2.8.0. - </action> - <action issue="LOG4J2-1494" dev="ggregory" type="update"> - Updated Jackson from 2.8.0 to 2.8.1. - </action> - <action issue="LOG4J2-1569" dev="ggregory" type="update"> - Updated Jackson from 2.8.1 to 2.8.2. - </action> - <action issue="LOG4J2-1598" dev="ggregory" type="update"> - Updated Jackson from 2.8.2 to 2.8.3. - </action> - <action issue="LOG4J2-1495" dev="ggregory" type="update"> - Updated LMAX Disruptor from 3.3.4 to 3.3.5. - </action> - <action issue="LOG4J2-1496" dev="ggregory" type="update"> - Updated Kafka client from 0.9.1.0 to 0.10.0.0. - </action> - <action issue="LOG4J2-1533" dev="ggregory" type="update"> - Updated Kafka client from 0.10.0.0 to 0.10.0.1. - </action> - <action issue="LOG4J2-1487" dev="ggregory" type="update"> - Updated JMS test from ActiveMQ 5.13.3 to 5.13.4. - </action> - <action issue="LOG4J2-1551" dev="ggregory" type="update"> - Updated JMS test from ActiveMQ 5.13.4 to 5.14.0. - </action> - <action issue="LOG4J2-1543" dev="ggregory" type="update"> - Removed deprecated Core API org.apache.logging.log4j.core.util.Constants.UTF_8. - </action> - <action issue="LOG4J2-1544" dev="ggregory" type="update"> - Removed deprecated Core API org.apache.logging.log4j.core.util.Assert.requireNonNull(T, String). - </action> - <action issue="LOG4J2-1545" dev="ggregory" type="update"> - Removed deprecated Web API org.apache.logging.log4j.web.WebLookup.getServletContext(). - </action> - </release> - <release version="2.6.2" date="2016-07-05" description="GA Release 2.6.2"> - <action issue="LOG4J2-904" dev="rgoers" type="fix" due-to="Bernhard Mähr"> - If copy and delete fails in rename action then resort to truncating the source file after copying it. - </action> - <action issue="LOG4J2-1250" dev="rgoers" type="fix"> - CronTriggeringPolicy was not properly setting the prevFileTime value for the PatternProcessor so - file dates and times on rolled files were incorrect. - </action> - <action issue="LOG4J2-1452" dev="rpopma" type="fix" due-to="Mikael StÃ¥ldal"> - Fixed issue where reusable messages broke flow tracing logic. - </action> - <action issue="LOG4J2-1440" dev="rgoers" type="fix"> - Fix bug in OnStartupTriggeringPolicy that allowed it to roll over on every reconfiguration. Added - minSize attribute. - </action> - <action issue="LOG4J2-1414" dev="rpopma" type="fix" due-to="Ralph Goers"> - Fixed minor issues with the 2.6.1 web site. - </action> - <action issue="LOG4J2-1434" dev="rpopma" type="fix" due-to="Luke Butters"> - Ensure that the thread-local StringBuilders used by Layouts to format log events to text will not - retain excessive memory after a large message was logged. - </action> - <action issue="LOG4J2-1395" dev="mikes" type="add"> - Add "direct" option to ConsoleAppender for increased performance. - </action> - <action issue="LOG4J2-1418" dev="mikes" type="fix"> - Provide MessageFactory2 to custom Logger implementations. - </action> - <action issue="LOG4J2-1420" dev="rgoers" type="fix"> - RollingRandomAccessFileManager was not properly rolling over on startup and was getting a NullPointerException. - </action> - <action issue="LOG4J2-1417" dev="rpopma" type="fix"> - Fixed issue where Unbox utility ignored the value Constants.ENABLE_THREADLOCALS and always stored non-JDK classes in ThreadLocals. - </action> - <action issue="LOG4J2-1422" dev="rpopma" type="fix"> - Fixed issue where AsyncAppenderQueueFullPolicyTest sometimes hangs. - </action> - <action issue="LOG4J2-1445" dev="ggregory" type="fix" due-to="Ludovic HOCHET"> - OnStartupTriggeringPolicyTest fails on Windows saying the file is used by another process. - </action> - <action issue="LOG4J2-1437" dev="rpopma" type="add"> - (GC) ObjectMessage and ReusableObjectMessage now avoid calling toString() on auto-boxed primitive parameters. - </action> - <action issue="LOG4J2-1415" dev="rpopma" type="add"> - (GC) ParameterFormatter now avoids calling toString() on auto-boxed primitive message parameters. - </action> - <action issue="LOG4J2-1412" dev="rpopma" type="add"> - Unbox utility's ringbuffer of StringBuilders is now configurable. - </action> - <action issue="LOG4J2-1432" dev="ggregory" type="update"> - Update Jackson from 2.7.4 to 2.7.5. - </action> - <action issue="LOG4J2-1433" dev="ggregory" type="update"> - Update Jansi from 1.11 to 1.13. - </action> - <action issue="LOG4J2-1444" dev="ggregory" type="update"> - Update Apache Commons Compress from 1.11 to 1.12. - </action> - </release> - <release version="2.6.1" date="2016-06-05" description="GA Release 2.6.1"> - <action issue="LOG4J2-1405" dev="rgoers" type="fix"> - OnStartupTriggeringPolicy was forcing a rollover of empty files at startup and would append a second footer that was added by the prior shutdown. - </action> - <action issue="LOG4J2-1406" dev="rpopma" type="fix" due-to="Trask Stalnaker"> - Fixed bug in ReusableParameterizedMessage where Throwable was never updated so first error was logged over and over again and subsequent errors were not logged. - </action> - <action issue="LOG4J2-1409" dev="rpopma" type="fix" due-to="Shahan"> - Fixed ArrayIndexOutOfBoundsException that may occur in ReusableParameterizedMessage. - </action> - <action issue="LOG4J2-997" dev="rgoers" type="fix" due-to="Maytee Chinavanichkit"> - Add filter and remove filter were not working properly in AbstractFilterable. - </action> - <action issue="LOG4J2-1032" dev="rgoers" type="fix"> - Changed RenameAction to use java.nio to better report rename failures. - </action> - <action issue="LOG4J2-1407" dev="ggregory" type="fix"> - Fixed misleading WARN log events from Log4j about message factories and unexpected formatting. - </action> - <action issue="LOG4J2-1408" dev="ggregory" type="fix"> - Added the module log4j-liquibase to BOM POM. - </action> - <action issue="LOG4J2-1180" dev="ggregory" type="fix"> - Logger cache now accounts for message factory. - </action> - <action issue="LOG4J2-1402" dev="rgoers" type="fix"> - Fix regression in properties configuration to support arbitrary component ids. - </action> - <action issue="LOG4J2-1385" dev="ggregory" type="update"> - (GC) CSV layouts should not create a new CSVPrinter for each log event. Requires Apache Commons CSV 1.4. - </action> - <action issue="LOG4J2-1398" dev="ggregory" type="update"> - Update liquibase-core from 3.4.2 to 3.5.1. - </action> - <action issue="LOG4J2-1399" dev="ggregory" type="update"> - Update Apache Commons CSV from 1.3 to 1.4. - </action> - <action issue="LOG4J2-1411" dev="mattsicker" type="add"> - Added documentation about plugin builders compared to factories. - </action> - <action issue="LOG4J2-1394" dev="mattsicker,mikes" type="fix"> - Fixed minor issues with the 2.6 web site. - </action> - </release> - <release version="2.6" date="2016-05-25" description="GA Release 2.6"> - <action issue="LOG4J2-1270" dev="rpopma" type="add"> - (GC) Added support for garbage-free logging in steady state. - This includes Async Loggers and logging synchronously to the console and to a file, - but does not include the AsyncAppender. This release makes the GelfLayout and - the main patterns in the PatternLayout garbage-free. - </action> - <action issue="LOG4J2-1297" dev="rpopma" type="add"> - (GC) Added manual page on garbage-free logging. - </action> - <action issue="LOG4J2-1373" dev="rpopma" type="add"> - (GC) Update Logger wrapper Generator tool to generate methods for the new Logger methods. - </action> - <action issue="LOG4J2-1356" dev="mikes" type="update"> - (GC) GelfLayout does now support garabage-free logging (with compressionType=OFF). - </action> - <action issue="LOG4J2-1326" dev="rpopma" type="add"> - (GC) Added methods to the Logger interface for logging CharSequence messages. - </action> - <action issue="LOG4J2-1344" dev="rpopma" type="add"> - (GC) FileAppender, RollingFileAppender and MemoryMappedFileAppender are now also garbage-free by default. - </action> - <action issue="LOG4J2-1343" dev="rpopma" type="update"> - (GC) ConsoleAppender is now garbage-free by default. This logic is reusable for all AbstractOutputStreamAppender subclasses. - </action> - <action issue="LOG4J2-1278" dev="rpopma" type="add"> - (GC) Added unrolled varargs methods to Logger API, added Unbox utility to avoid auto-boxing when logging primitive values. - </action> - <action issue="LOG4J2-1318" dev="rpopma" type="update"> - (GC) Avoid allocating unnecessary temporary objects in LoggerContext's getLogger methods. - </action> - <action issue="LOG4J2-1333" dev="rpopma" type="update"> - (GC) Avoid allocating unnecessary temporary objects in MarkerManager's getMarker methods. - </action> - <action issue="LOG4J2-1321" dev="rpopma" type="update"> - (GC) Avoid allocating unnecessary temporary objects in PatternLayout's NamePatternConverter and ClassNamePatternConverter. - </action> - <action issue="LOG4J2-1271" dev="rpopma" type="add"> - (GC) Add MessageFactory that avoid allocation by reusing a cached ParameterizedMessage instance. - </action> - <action issue="LOG4J2-1271" dev="rpopma" type="update"> - (GC) ParameterizedMessage optimizations to avoid or at least postpone allocating temporary objects. - </action> - <action issue="LOG4J2-1283" dev="rpopma" type="update"> - (GC) Provide ThreadLocal-based gc-free caching mechanism in DatePatternConverter for non-webapps. - </action> - <action issue="LOG4J2-1293" dev="rpopma" type="add"> - (GC) Add interface StringBuilderFormattable to enable converting Messages and parameters to text without allocating temporary objects. - ParameterizedMessage, ObjectMessage, SimpleMessage and ThreadDumpMessage now implement StringBuilderFormattable. - </action> - <action issue="LOG4J2-1291" dev="rpopma" type="update"> - (GC) Update PatternLayout to utilize gc-free mechanism for LogEvent processing. - </action> - <action issue="LOG4J2-1292" dev="rpopma" type="update"> - (GC) Update RandomAccessFileAppender and RollingRandomAccessFileAppender to utilize gc-free Layout.encode() method. - </action> - <action issue="LOG4J2-1274" dev="rpopma" type="add"> - (GC) Add encode(LogEvent, ByteBufferDestination) method to Layout API to enable converting LogEvents to bytes without creating temporary objects. - </action> - <action issue="LOG4J2-1281" dev="rpopma" type="fix"> - (GC) LoggerConfig.getProperties() should not allocate on each call. - </action> - <action issue="LOG4J2-1272" dev="rpopma" type="update"> - (GC) Improve LoggerConfig's data structure for AppenderControl objects to avoid allocating temporary objects during - traversal for each log event. - </action> - <action issue="LOG4J2-1269" dev="rpopma" type="fix"> - (GC) AsyncLogger should use thread-local translator by default. - </action> - <action issue="LOG4J2-623" dev="rpopma" type="fix"> - Generate MDC properties as a JSON map in JSONLayout, with option to output as list of map entries. - </action> - <action issue="LOG4J2-1362" dev="rpopma" type="add" due-to="Gary Gregory"> - Added a YAML layout. - </action> - <action issue="LOG4J2-1387" dev="rpopma" type="fix"> - Fixed memory leak related to shutdown hook. - </action> - <action issue="LOG4J2-1179" dev="rpopma" type="add"> - Documented benchmark results comparing Log4j 2 performance to other logging libraries. - </action> - <action issue="LOG4J2-1382" dev="rpopma" type="fix"> - Copying a MutableLogEvent using Log4jLogEvent.Builder should not unnecessarily obtain caller location information. - </action> - <action issue="LOG4J2-1011" dev="mikes" type="add"> - Document dependencies for layouts. - </action> - <action issue="LOG4J2-621" dev="ggregory" type="add" due-to="Lee Theobald, Kamal Mettananda, Gary Gregory"> - Pattern to drop first N package parts. - </action> - <action issue="LOG4J2-494" dev="rgoers" type="add" due-to="Philipp Knobel"> - Support merging configurations to for a composite configuration. - </action> - <action issue="LOG4J2-1357" dev="mikes" type="add"> - Option to not log stack traces for logged Throwables in GelfLayout. - </action> - <action issue="LOG4J2-1375" dev="rpopma" type="update"> - Update SLF4J from 1.7.13 to 1.7.21. - </action> - <action issue="LOG4J2-1374" dev="rpopma" type="update"> - Migrate tests from Logback 1.1.3 to 1.1.7. - </action> - <action issue="LOG4J2-1384" dev="ggregory" type="update"> - Update Apache Commons CSV from 1.2 to 1.3. - </action> - <action issue="LOG4J2-1372" dev="rgoers" type="fix" due-to="Kamal Mettananda, Gary Gregory"> - XMLLayout indents, but not the first child tag (Event). - </action> - <action issue="LOG4J2-1363" dev="rgoers" type="fix"> - Properties Configuration did not support includeLocation attribute on Loggers. - </action> - <action issue="LOG4J2-1263" dev="rgoers" type="fix"> - The ConfigurationSource was not saved for BuiltConfigurations so monitor interval had no effect. - </action> - <action issue="LOG4J2-1369" dev="ggregory" type="fix" due-to="Alex Birch, Gary Gregory"> - "xz" compression results in plaintext, uncompressed files. - </action> - <action issue="LOG4J2-1365" dev="mikes" type="update"> - (Log4j-internal) Provide message text as CharSequence for some message types to optimize some layouts. - </action> - <action issue="LOG4J2-1368" dev="rpopma" type="fix"> - (Log4j-internal) StatusLogger dropped exceptions when logging parameterized messages. - </action> - <action issue="LOG4J2-1348" dev="ggregory" type="add" due-to="Greg Thomas, Gary Gregory"> - Add an AutoCloseable ThreadContext class: CloseableThreadContext. - </action> - <action issue="LOG4J2-1345" dev="rpopma" type="update"> - (Doc) Clarify documentation for properties that control Log4j behaviour. - </action> - <action issue="LOG4J2-1336" dev="ggregory" type="fix" due-to="Zbynek Vyskovsky"> - LoggerFactory in 1.2 API module is not compatible with 1.2. - </action> - <action issue="LOG4J2-1354" dev="ggregory" type="fix" due-to="Arkadiusz Adolph"> - No configuration reload is triggered under Windows when replacing the configuration file with one that has older last modified date. - </action> - <action issue="LOG4J2-1346" type="fix"> - Exception from Log4jServletContextListener prevents jetty-maven-plugin run-forked. - </action> - <action issue="LOG4J2-1339" dev="rpopma" type="fix"> - (Perf) AsyncLogger performance optimization: avoid calling instanceof TimestampMessage in hot path. - </action> - <action issue="LOG4J2-1324" dev="rpopma" type="fix"> - Improve error handling in the Async Logger background thread: the new default exception handler no longer rethrows the error. - </action> - <action issue="LOG4J2-1309" dev="ggregory" type="fix"> - Configuration file error does not show cause exception. - </action> - <action issue="LOG4J2-1299" dev="ggregory" type="add"> - Add pattern converter for thread id and priority in PatternLayout. - </action> - <action issue="LOG4J2-1289" dev="ggregory" type="fix"> - Change flow logging text from "entry' to "Enter" and "exit" to "Exit". - </action> - <action issue="LOG4J2-1284" dev="rpopma" type="fix"> - Made default MessageFactory configurable. - </action> - <action issue="LOG4J2-1280" dev="ggregory" type="fix"> - Deprecate org.apache.logging.log4j.util.MessageSupplier. - </action> - <action issue="LOG4J2-1280" dev="rpopma" type="fix"> - Logger methods taking Supplier parameters now correctly handle cases where the supplied value is a Message. - </action> - <action issue="LOG4J2-1268" dev="rpopma" type="fix"> - FixedDateFormat was incorrect for formats having MMM with the French locale. - </action> - <action issue="LOG4J2-1255" dev="rgoers" type="update"> - Add enhanced entry and exit methods. - </action> - <action issue="LOG4J2-124" dev="rgoers" type="add"> - Add shutdown methods to LogManager. - </action> - <action issue="LOG4J2-1222" dev="rgoers" type="fix"> - Creation of a LoggerContext will fail if shutdown is in progress. LogManager will default to SimpleLogger instead. - </action> - <action issue="LOG4J2-1221" dev="rpopma" type="add" due-to="Michael Barker"> - Added async logger Timeout wait strategy and made this the default wait strategy for async loggers. - This prevents a rare deadlock that may occur on Solaris. - </action> - <action issue="LOG4J2-1080" dev="rpopma" type="add"> - Added option to discard events below a certain log level if the async logger ring buffer - or async appender queue is full. - </action> - <action issue="LOG4J2-1237" dev="ggregory" type="add" due-to="Mike Calmus, Gary Gregory"> - Make PatternLayout header and footer accept a pattern. - </action> - <action issue="LOG4J2-1244" dev="ggregory" type="add" due-to="Anshu Garg, Remko Popma, Gary Gregory"> - Make header and footer values customizable in JSONLayout. - </action> - <action issue="LOG4J2-1245" dev="ggregory" type="add"> - Make CSV Layout header and footers accept patterns. - </action> - <action issue="LOG4J2-1192" dev="ggregory" type="add" due-to="Jörg Bretschneider, Gary Gregory"> - Dynamic Subject for SMTP Appender. - </action> - <action issue="LOG4J2-1277" dev="ggregory" type="add" due-to="Gary Gregory, Ludovic Hochet"> - FormattedMessage, MessageFormatMessage and StringFormattedMessage should support passing in a Locale to ensure appropriate formatting. - </action> - <action issue="LOG4J2-1260" dev="ggregory" type="fix" due-to="Blake Day, Gary Gregory"> - TlsSyslogFrame calculates message length incorrectly. - </action> - <action issue="LOG4J2-1258" dev="ggregory" type="fix" due-to="Francis Lalonde"> - Async DynamicThresholdFilter does not use the log event's context map. - </action> - <action issue="LOG4J2-1232" dev="ggregory" type="fix" due-to="Nikolai"> - Incorrect log rotation in last week of year. - </action> - <action issue="LOG4J2-1248" dev="rpopma" type="fix"> - Fixed broken nanotime in pattern layout. - </action> - <action issue="LOG4J2-908" dev="ggregory" type="fix" due-to="Konstantinos Liakos, Patrick Flaherty, Robin Coe, Gary Gregory"> - JSONLayout doesn't add a comma between log events. - </action> - <action issue="LOG4J2-1230" dev="ggregory" type="fix" due-to="Vladimir Hudec, Ralph Goers, Gary Gregory"> - Don't concatenate SYSLOG Messages. - </action> - <action issue="LOG4J2-1238" dev="ggregory" type="fix"> - org.apache.logging.log4j.core.net.TcpSocketManager and other classes does not report internal exceptions to the status logger. - </action> - <action issue="LOG4J2-1212" dev="rpopma" type="fix"> - Fix documentation to specify the correct default wait strategy used by async loggers. - </action> - <action issue="LOG4J2-1215" dev="ggregory" type="fix" due-to="Erik Kemperman"> - Documentation/XSD inconsistencies. - </action> - <action issue="LOG4J2-1276" dev="ggregory" type="fix" due-to="Ludovic Hochet"> - LoggerMessageSupplierTest and LoggerSupplierTest are Locale sensitive. - </action> - <action issue="LOG4J2-1380" dev="ggregory" type="update"> - Update Jackson from 2.7.3 to 2.7.4. - </action> - <action issue="LOG4J2-1304" dev="ggregory" type="update"> - Update Jackson from 2.7.0 to 2.7.2. - </action> - <action issue="LOG4J2-1253" dev="ggregory" type="update"> - Update LMAX Disruptor from 3.3.2 to 3.3.4. - </action> - <action issue="LOG4J2-1219" dev="ggregory" type="update"> - Update SLF4J from 1.7.12 to 1.7.13. - </action> - <action issue="LOG4J2-1239" dev="ggregory" type="update"> - Update Jackson from 2.6.3 to 2.6.4. - </action> - <action issue="LOG4J2-1249" dev="ggregory" type="update"> - Update Jackson from 2.6.4 to 2.7.0. - </action> - <action issue="LOG4J2-1351" dev="ggregory" type="update"> - Update Jackson from 2.7.2 to 2.7.3. - </action> - <action issue="LOG4J2-1240" dev="ggregory" type="update"> - Update Liquibase from 3.3.5 to 3.4.2. - </action> - <action issue="LOG4J2-1294" dev="ggregory" type="update"> - Update Kafka client from 0.9.0.0 to 0.9.0.1. - </action> - <action issue="LOG4J2-1352" dev="ggregory" type="update"> - Update javax.mail from 1.5.4 to 1.5.5. - </action> - <action issue="LOG4J2-1358" dev="ggregory" type="update"> - Update Apache Commons Compress from 1.10 to 1.11. - </action> - <action issue="LOG4J2-1388" dev="rpopma" type="update"> - Update Google java-allocation-instrumenter from 3.0 to 3.0.1. - </action> - <action issue="LOG4J2-1233" dev="ggregory" type="update" due-to="Bahri Gencsoy"> - Misleading Value In Properties Example. - </action> - <action issue="LOG4J2-1251" dev="mattsicker" type="fix" due-to="Romain Manni-Bucau"> - Fix JUL bridge issue where LogRecord.getParameters() is used when null. - </action> - <action issue="LOG4J2-1254" dev="rpopma" type="fix" due-to="Josh Trow"> - Fix typo in Flow Tracing documentation. - </action> - <action issue="LOG4J2-920" dev="mattsicker" type="fix" due-to="Ludovic Hochet"> - ClassNotFoundException for BundleContextSelector when initialising in an OSGi environment. - </action> - <action issue="LOG4J2-1300" dev="mattsicker" type="update"> - Remove serializability from classes that don't need it. - </action> - <action issue="LOG4J2-1303" dev="mattsicker" type="add"> - Add documentation links to runtime dependencies in each component intro page. - </action> - <action issue="LOG4J2-1275" dev="mattsicker" type="fix" due-to="Ludovic Hochet"> - Fix RollingAppenderNoUnconditionalDeleteTest repeat test runs from failing. - </action> - <action issue="LOG4J2-1262" dev="mattsicker" type="fix"> - Stop throwing unnecessary exception in Log4jServletContextListener.contextDestroyed(). - </action> - <action issue="LOG4J2-1252" dev="mattsicker" type="add"> - JeroMqAppender should support layouts. - </action> - <action issue="LOG4J2-1227" dev="mattsicker" type="fix" due-to="Olivier Lemasle"> - NullPointerException in MapLookup.lookup if the event is null. - </action> - <action issue="LOG4J2-1306" dev="mattsicker" type="update"> - JeroMqAppender should use ShutdownCallbackRegistry instead of runtime hooks. - </action> - <action issue="LOG4J2-1217" dev="mattsicker" type="add" due-to="Thies Wellpott"> - PatternLayout option to limit length of text. - </action> - <action issue="LOG4J2-1308" dev="mattsicker" type="update"> - Remove need to pre-specify appender et al. identifiers in property file config format. - </action> - <action issue="LOG4J2-1050" dev="mattsicker" type="fix" due-to="Adam Retter"> - Add a Log4jLookup class to help write log files relative to log4j2.xml. - </action> - <action issue="LOG4J2-1133" dev="mattsicker" type="add"> - Add JNDI lookup documentation. - </action> - <action issue="LOG4J2-1310" dev="mattsicker" type="fix"> - JndiLookup mindlessly casts to String and should use String.valueOf(). - </action> - <action issue="LOG4J2-1206" dev="mattsicker" type="update"> - org.apache.logging.log4j.core.LoggerContext#updateLoggers should call firePropertyChangeEvent. - </action> - <action issue="LOG4J2-248" dev="mattsicker" type="fix"> - Log4jWebInitializerImpl: Use Thread instead of Class for fallback classloader. - </action> - <action issue="LOG4J2-1169" dev="mattsicker" type="add" due-to="Gerald Kritzinger"> - PatternLayout: Possible variable substitution in equals substitution parameter. - </action> - <action issue="LOG4J2-1322" dev="mattsicker" type="update"> - Update Log4j 1.x migration guide to include information about system property lookup syntax changes. - </action> - <action issue="LOG4J2-1330" dev="mattsicker" type="fix"> - Fix NoClassDefFoundError in ReflectionUtil on Google App Engine. - </action> - </release> - <release version="2.5" date="2015-12-06" description="GA Release 2.5"> - <action issue="LOG4J2-324" dev="rpopma" type="fix"> - Reduced memory usage of status messages in bounded queue; support zero-length queue that stores no messages. - </action> - <action issue="LOG4J2-1173" dev="rpopma" type="fix"> - Fixed rollover error when copying to a directory mapped to a remote Linux host. - </action> - <action issue="LOG4J2-435" dev="rpopma" type="add" due-to="Robert Schaft"> - Added support for custom delete actions triggered by a rollover. - </action> - <action issue="LOG4J2-649" dev="rgoers" type="update" due-to="Aleksey Zvolinsky"> - Add PurgePolicy and IdlePurgePolicy to RoutingAppender. - </action> - <action issue="LOG4J2-1202" dev="rgoers" type="update"> - Remove ConfigurationMonitor. The WatchManager is now used to check for configuration changes. - </action> - <action issue="LOG4J2-1195" dev="mikes" type="fix" due-to="Melvin Du"> - Make KafkaAppender support SerializedLayout. - </action> - <action issue="LOG4J2-89" dev="rgoers" type="add"> - Allow rollover to occur at any time. Add CronTriggeringPolicy. - </action> - <action issue="LOG4J2-381" dev="rgoers" type="fix" due-to="Anthony Baldocchi"> - Allow triggering policy and rollover strategy to be modified during reconfiguration. - </action> - <action issue="LOG4J2-1136" dev="rgoers" type="add"> - Add support for JSR 223 scripts in filters and the PatternSelector. - </action> - <action issue="LOG4J2-1168" dev="ggregory" type="add" due-to="Steven Swor"> - Add getters for source and destination file in file rename action. - </action> - <action issue="LOG4J2-1175" dev="ggregory" type="add"> - Add getters for classes in org.apache.logging.log4j.core.appender.rolling.action. - </action> - <action issue="LOG4J2-898" dev="rpopma" type="add"> - Added system property to allow users to control whether messages should be formatted in the background. - </action> - <action issue="LOG4J2-1178" dev="ggregory" type="add"> - Support use-case for JDBC's CommonDataSource.setLogWriter(PrintWriter) and java.sql.DriverManager.setLogWriter(PrintWriter). - </action> - <action issue="LOG4J2-1187" dev="ggregory" type="add"> - Support use case for java.sql.DriverManager.setLogStream(PrintStream). - </action> - <action issue="LOG4J2-1029" dev="rpopma" type="fix" due-to="Stefan Leonhartsberger"> - Performance improvement when gathering location information. - </action> - <action issue="LOG4J2-1172" dev="rpopma" type="fix"> - Fixed ThreadLocal leak [AsyncLogger$Info] on Tomcat when using AsyncLoggerContextSelector. - </action> - <action issue="LOG4J2-1176" dev="rpopma" type="fix"> - Fixed memory leak when log4j jars are in Tomcat's lib folder. - </action> - <action issue="LOG4J2-1180" dev="ggregory" type="fix" due-to="Mikael StÃ¥ldal"> - Logger cache does not account for message factory. - </action> - <action issue="LOG4J2-879" dev="rpopma" type="fix"> - Documentation: fixed minor issues with the site and manual pages. - </action> - <action issue="LOG4J2-999" dev="rpopma" type="fix" due-to="Joan Balagueró"> - RollingFileAppender should also roll over when log event time is equal to rollover time, not only when later. - </action> - <action issue="LOG4J2-873" dev="rpopma" type="fix" due-to="Martin Dickins, LC, Luke Woodward"> - Fixed bug where omitting the <display-name> element in web.xml caused incorrect log4j initialization, - resulting in memory leaks when the web application was stopped or reloaded. - </action> - <action issue="LOG4J2-323" dev="rpopma" type="fix"> - Better web app support for async loggers: Fixed a memory leak that occurred when the logging jars are placed - in the container's classpath and the configuration file uses AsyncRoot/AsyncLogger. - The problem was that the first web application started the Disruptor background thread [AsyncLoggerConfig-1] but did not stop it until all web apps are stopped. - Each web application now has its own Disruptor which is stopped/started together with the web app. - </action> - <action issue="LOG4J2-493" dev="rpopma" type="fix"> - Better web app support for async loggers: it is now possible to place the logging jars in the container's - classpath when making all loggers asynchronous by using AsyncLoggerContextSelector. This fixes a problem where - logging would stop working after stopping and restarting a web application. - </action> - <action issue="LOG4J2-1171" dev="rpopma" type="fix"> - Use servlet context name for logger context name when available. - </action> - <action issue="LOG4J2-1159" dev="rpopma" type="fix"> - Fixed a ThreadLocal memory leak in Tomcat8 that mentions AsyncLoggers when Async Loggers are not used. - </action> - <action issue="LOG4J2-1166" dev="rpopma" type="fix"> - AbstractConfiguration executor should use a DaemonThreadFactory. - </action> - <action issue="LOG4J2-1165" dev="rpopma" type="fix"> - Improve Log4j initialization status messages. - </action> - <action issue="LOG4J2-1156" dev="rpopma" type="fix"> - Web site corrections and updates. - </action> - <action issue="LOG4J2-1158" dev="ggregory" type="fix" due-to="Michael Fortin, Gary Gregory"> - Log4J JUL adapter is using MessageFormat on String passed by java.util.function.Supplier<String>. - </action> - <action issue="LOG4J2-801" dev="mattsicker" type="fix"> - org.apache.logging.log4j.core.Logger should be serializable. - </action> - <action issue="LOG4J2-1157" dev="mattsicker" type="fix" due-to="Norbert Bartels"> - Fix compilation error for classes annotated with @Plugin. - </action> - <action issue="LOG4J2-948" dev="mattsicker" type="fix" due-to="Andrew Flower"> - Fix plugin documentation error about Converters. - </action> - <action issue="LOG4J2-1193" dev="ggregory" type="fix"> - Prefix all thread names Log4j creates with "Log4j2-". - </action> - <action issue="LOG4J2-1194" dev="ggregory" type="fix" due-to="Adam Brin"> - Documentation does not match parameters for LoggerNameLevelRewritePolicy. - </action> - <action issue="LOG4J2-1196" dev="mattsicker" type="fix" due-to="René Zanner"> - MongoDbConnection does not close MongoClient. - </action> - <action issue="LOG4J2-1174" dev="ggregory" type="update"> - Update Jackson from 2.6.2 to 2.6.3. - </action> - <action issue="LOG4J2-1207" dev="ggregory" type="update"> - Update kafka-clients from 0.8.2.2 to 0.9.0.0. - </action> - </release> - <release version="2.4.1" date="2015-10-08" description="GA Release 2.4.1"> - <action issue="LOG4J2-1129" dev="rgoers" type="add"> - Allow PatternLayout to select a pattern to use based on some selection criteria. - </action> - <action issue="LOG4J2-1145" dev="ggregory" type="add"> - Add %equals to PatternLayout to test and replace patterns with strings. - </action> - <action issue="LOG4J2-1147" dev="ggregory" type="add"> - Add %equalsIgnoreCase to PatternLayout to test and replace patterns with strings. - </action> - <action issue="LOG4J2-1146" dev="ggregory" type="add"> - Add %notEmpty to PatternLayout to avoid output of patterns where all variables are empty. - </action> - <action issue="LOG4J2-1020" dev="mikes" type="add"> - Add possibility to set shutdown timeout on AsyncAppender. - </action> - <action issue="LOG4J2-1153" dev="rpopma" type="fix"> - Fixed NullPointerException when only root logger is defined (and no named loggers) in configuration properties file. - </action> - <action issue="LOG4J2-1140" dev="rpopma" type="fix"> - Fixed bug where headers were not being written to first file with RollingFileAppender. - </action> - <action issue="LOG4J2-1149" dev="rpopma" type="fix"> - Fixed bug where PatternLayout predefined date pattern with time zone always renders default date format. - </action> - <action issue="LOG4J2-1050" dev="rpopma" type="fix"> - Fixed Log4jLookup. - </action> - <action issue="LOG4J2-1142" dev="rpopma" type="fix"> - Fix potential memory leak in web applications by using a straight ThreadLocal field instead of subclassing ThreadLocal. - </action> - <action issue="LOG4J2-1135" dev="rpopma" type="fix"> - Compression on rollover was broken: log file was renamed to .zip but not compressed. - </action> - <action issue="LOG4J2-1127" dev="ggregory" type="fix"> - log4j2.xml cannot be parsed on Oracle Weblogic 12c. - </action> - <action issue="LOG4J2-1132" dev="ggregory" type="fix"> - Do not use MongoDB driver 2.13.3 deprecated methods. - </action> - <action issue="LOG4J2-1144" dev="ggregory" type="fix"> - Add %markerSimpleName in pattern layout should evaluate to marker name (not toString()). - </action> - <action issue="LOG4J2-1126" dev="ggregory" type="fix"> - Web site corrections and updates. - </action> - <action issue="LOG4J2-1151" dev="rpopma" type="update"> - Performance improvement: backport Java 8 fast ISO-8859-1 String to byte[] encoder to AbstractStringLayout. - </action> - <action issue="LOG4J2-935" dev="rpopma" type="update"> - Performance improvement when converting Strings to byte[] arrays. - </action> - <action issue="LOG4J2-1040" dev="ggregory" type="update"> - Update MongoDB driver from 2.13.3 to 3.0.4. - </action> - <action issue="LOG4J2-1128" dev="ggregory" type="update"> - Reuse StringBuilder to improve performance for String-based layouts: CSV, GELF, HTML, RFC524, Syslog. - </action> - <action issue="LOG4J2-1131" dev="ggregory" type="update"> - Update mongo-java-driver from 2.13.2 to 2.13.3. - </action> - <action issue="LOG4J2-1138" dev="ggregory" type="update"> - Do not use Jackson deprecated methods. - </action> - <action issue="LOG4J2-1139" dev="ggregory" type="update"> - Update Jackson from 2.6.1 to 2.6.2. - </action> - <action issue="LOG4J2-1150" dev="ggregory" type="update"> - Update kafka-clients from 0.8.2.1 to 0.8.2.2. - </action> - </release> - <release version="2.4" date="2015-09-20" description="GA Release 2.4"> - <action issue="LOG4J2-635" dev="rgoers" type="add"> - Add support for configuration via Properties. - </action> - <action issue="LOG4J2-952" dev="rgoers" type="add"> - Add ConfigurationBuilder for programmatic configuration. - </action> - <action issue="LOG4J2-1017" dev="ggregory" type="update"> - Update Java platform from Java 6 to 7. From this version onwards, log4j 2 requires Java 7. - </action> - <action issue="LOG4J2-599" dev="rpopma" type="add"> - Added support for Java 8 lambda expressions to lazily construct a log message only if - the requested log level is enabled. - </action> - <action issue="LOG4J2-1118" dev="rpopma" type="add"> - Updated Logger wrapper generator tool to add Java 8 lambda support for custom log levels. - </action> - <action issue="LOG4J2-1107" dev="ggregory" type="add" due-to="Mikael StÃ¥ldal"> - New Appender for Apache Kafka. - </action> - <action issue="LOG4J2-1113" dev="ggregory" type="add" due-to="Gary Gregory"> - New publisher Appender for ZeroMQ (using JeroMQ). - </action> - <action issue="LOG4J2-1088" dev="ggregory" type="add" due-to="Gary Gregory"> - Add Comma Separated Value (CSV) layouts for parameter and event logging. - </action> - <action issue="LOG4J2-812" dev="rgoers" type="update"> - PatternLayout timestamp formatting performance improvement: replaced synchronized SimpleDateFormat with - Apache Commons FastDateFormat. This and better caching resulted in a ~3-30X faster timestamp formatting. - </action> - <action issue="LOG4J2-1097" dev="rpopma" type="update"> - PatternLayout timestamp formatting performance improvement: predefined date formats (and variants using - a period '.' millisecond separator instead of ',') are now formatted ~2-10X faster than other date formats. - </action> - <action issue="LOG4J2-1096" dev="rpopma" type="update"> - Improved performance of ParameterizedMessage::getFormattedMessage by ~2X. - </action> - <action issue="LOG4J2-1120" dev="rpopma" type="update"> - LoggerConfig performance improvements: avoid unnecessary lock acquisition, use more efficient data structure. - </action> - <action issue="LOG4J2-1125" dev="rpopma" type="update"> - PatternLayout performance improvement by caching and reusing a ThreadLocal StringBuilder. - </action> - <action issue="LOG4J2-1121" dev="rpopma" type="fix"> - Fixed potential race condition on reconfiguration. Introduced ReliabilityStrategy to facilitate - switching between different mechanisms for preventing log events from being dropped on reconfiguration. - </action> - <action issue="LOG4J2-1114" dev="ggregory" type="update"> - Add thread name to status logger layout. - </action> - <action issue="LOG4J2-1123" dev="ggregory" type="fix"> - Core Configurator.initialize(String, ClassLoader, String) fails to work when config location is a file path. - </action> - <action issue="LOG4J2-1117" dev="ggregory" type="fix" due-to="Marcus Thiesen"> - OutputStreamManager in ConsoleAppender leaking managers. - </action> - <action issue="LOG4J2-1044" dev="rgoers" type="fix"> - Write pending events to Flume when the appender is stopped. - </action> - <action issue="LOG4J2-1108" dev="ggregory" type="fix" due-to="Mikael StÃ¥ldal"> - NullPointerException when passing null to java.util.logging.Logger.setLevel(). - </action> - <action issue="LOG4J2-1110" dev="ggregory" type="fix"> - org.apache.logging.log4j.jul.CoreLogger.setLevel() checks for security permission too late. - </action> - <action dev="rpopma" type="remove"> - Removed experimental interface LevelLogger which got committed to master by mistake. - </action> - <action issue="LOG4J2-1010" dev="rgoers" type="update"> - Pass log event when interpolating logger properties. - </action> - <action issue="LOG4J2-1090" dev="ggregory" type="add"> - Add Core Configurator APIs to change a logger's level. - </action> - <action issue="LOG4J2-1105" dev="ggregory" type="add" due-to="Gary Gregory"> - Add API org.apache.logging.log4j.Level.isInRange(Level, Level). - </action> - <action issue="LOG4J2-1106" dev="ggregory" type="add" due-to="Gary Gregory"> - Add a LevelRangeFilter class. - </action> - <action issue="LOG4J2-1074" dev="rpopma" type="add"> - Added support for system nanosecond time in pattern layout. - </action> - <action issue="LOG4J2-1075" dev="rpopma" type="add"> - Added support for compressing to bzip2 format on file rollover. - </action> - <action issue="LOG4J2-1077" dev="ggregory" type="add"> - Support additional Apache Commons Compress compression formats on rollover: Deflate, Pack200, XY. - </action> - <action issue="LOG4J2-767" dev="ggregory" type="add" due-to="Mikael StÃ¥ldal"> - New module for Liquibase integration. - </action> - <action issue="LOG4J2-1023" dev="ggregory" type="add" due-to="Mikael StÃ¥ldal"> - New RewritePolicy for changing level of a log event. - </action> - <action issue="LOG4J2-1015" dev="ggregory" type="add" due-to="Daniel Marcotte"> - Add a way to route messages based on the %marker in Layout for RoutingAppender. - </action> - <action issue="LOG4J2-1050" dev="ggregory" type="add" due-to="Adam Retter"> - Add a Log4jLookup class to help write log files relative to log4j2.xml. - </action> - <action issue="LOG4J2-1057" dev="ggregory" type="add"> - Add API org.apache.logging.log4j.LogManager.getFormatterLogger(). - </action> - <action issue="LOG4J2-1066" dev="ggregory" type="add" due-to="Charles Allen"> - Expose Log4jContextFactory's ShutdownCallbackRegistry. - </action> - <action issue="LOG4J2-1084" dev="ggregory" type="fix" due-to="Philipp Schneider"> - Misleading StatusLogger WARN event in LogManager with java.util.Map. - </action> - <action issue="LOG4J2-1051" dev="ggregory" type="fix" due-to="Lukasz Lenart"> - NoClassDefFoundError when starting app on Google App Engine. - </action> - <action issue="LOG4J2-684" dev="ggregory" type="fix" due-to="Joern Huxhorn, Mauro Molinari"> - ExtendedThrowablePatternConverter does not print suppressed exceptions. - </action> - <action issue="LOG4J2-1069" dev="ggregory" type="fix" due-to="Sam Braam"> - Improper handling of JSON escape chars when deserializing JSON log events. - </action> - <action issue="LOG4J2-1068" dev="ggregory" type="fix" due-to="Andy McMullan"> - Exceptions not logged when using TcpSocketServer + SerializedLayout. - </action> - <action issue="LOG4J2-1067" dev="ggregory" type="fix" due-to="Sam Braam"> - ThrowableProxy getExtendedStackTraceAsString throws NPE on deserialized nested exceptions. - </action> - <action issue="LOG4J2-1049" dev="rpopma" type="fix" due-to="Robert Schaft"> - AsyncAppender now resets the thread interrupted flag after catching InterruptedException. - </action> - <action issue="LOG4J2-1048" dev="rpopma" type="fix" due-to="Nikhil"> - FileConfigurationMonitor unnecessarily calls System.currentTimeMillis() causing high CPU usage. - </action> - <action issue="LOG4J2-1037" dev="ggregory" type="fix" due-to="Marc Dergacz"> - Backward compatibility issue in log4j-1.2-api NDC pop() and peek(). - </action> - <action issue="LOG4J2-1025" dev="ggregory" type="fix" due-to="Mikael StÃ¥ldal"> - Custom java.util.logging.Level gives null Log4j Level and causes NPE. - </action> - <action issue="LOG4J2-1033" dev="ggregory" type="fix" due-to="Mikael StÃ¥ldal"> - SimpleLogger creates unnecessary Map objects by calling ThreadContext.getContext() instead of getImmutableContext(). - </action> - <action issue="LOG4J2-1026" dev="ggregory" type="fix"> - HighlightConverter does not obey noConsoleNoAnsi. - </action> - <action issue="LOG4J2-1019" dev="ggregory" type="fix"> - ZipCompressAction leaves files open until GC when an IO error takes place. - </action> - <action issue="LOG4J2-1020" dev="ggregory" type="fix"> - GzCompressAction leaves files open until GC when an IO error takes place. - </action> - <action issue="LOG4J2-1038" dev="ggregory" type="fix" due-to="Gili"> - Incorrect documentation for layout default charset. - </action> - <action issue="LOG4J2-1042" dev="ggregory" type="fix" due-to="Guillaume Turri"> - Socket and Syslog appenders don't take timeout into account at startup. - </action> - <action issue="LOG4J2-934" dev="ggregory" type="fix" due-to="Kenneth Gendron"> - Circular suppressed Exception throws StackOverflowError. - </action> - <action issue="LOG4J2-1046" dev="ggregory" type="fix" due-to="Kenneth Gendron"> - Circular Exception cause throws StackOverflowError. - </action> - <action issue="LOG4J2-982" dev="ggregory" type="fix" due-to="Mikhail Mazurskiy"> - Use System.nanoTime() to measure time intervals. - </action> - <action issue="LOG4J2-1045" dev="ggregory" type="fix" due-to="Günter Albrecht"> - Externalize log4j2.xml via URL resource. - </action> - <action issue="LOG4J2-1058" dev="ggregory" type="fix" due-to="Daniel Branzea"> - Log4jMarker#contains(String) does not respect org.slf4j.Marker contract. - </action> - <action issue="LOG4J2-1060" dev="ggregory" type="fix"> - Log4jMarker#contains(Marker) does not respect org.slf4j.Marker contract. - </action> - <action issue="LOG4J2-1061" dev="ggregory" type="fix"> - Log4jMarker#remove(Marker) does not respect org.slf4j.Marker contract. - </action> - <action issue="LOG4J2-1062" dev="ggregory" type="fix"> - Log4jMarker#add(Marker) does not respect org.slf4j.Marker contract. - </action> - <action issue="LOG4J2-1064" dev="ggregory" type="fix"> - org.apache.logging.slf4j.Log4jMarker does not implement org.slf4j.Marker.equals(Object) org.slf4j.Marker.hashCode(). - </action> - <action issue="LOG4J2-889" dev="rpopma" type="fix" due-to="Maciej KaraÅ, Kenneth Leider"> - Header in layout should not be written on application startup if appending to an existing file. Fixes LOG4J2-1030. - </action> - <action issue="LOG4J2-918" dev="rpopma" type="fix"> - Clarify documentation for combining async with sync loggers. - </action> - <action issue="LOG4J2-1078" dev="ggregory" type="fix" due-to="Mikael StÃ¥ldal"> - GelfLayout throws exception if some log event fields are null. - </action> - <action issue="LOG4J2-1044" dev="rgoers" type="update"> - Support batchSize in FlumeAvroManager. - </action> - <action issue="LOG4J2-1065" dev="ggregory" type="update"> - Define org.apache.logging.log4j.Marker.equals(Object) and org.apache.logging.log4j.Marker.hashCode(). - </action> - <action issue="LOG4J2-1063" dev="ggregory" type="update"> - Avoid creating temporary array object in org.apache.logging.slf4j.Log4jMarker.iterator(). - </action> - <action issue="LOG4J2-890" dev="ggregory" type="update" due-to="Hassan Kalaldeh, Robert Andersson, Remko Popma"> - log4j-web-2.1 should workaround a bug in JBOSS EAP 6.2. - </action> - <action issue="LOG4J2-403" dev="ggregory" type="update" due-to="Poorna Subhash P, Jeremy Lautman"> - MongoDB appender, username and password should be optional. - </action> - <action issue="LOG4J2-1035" dev="ggregory" type="update"> - Log4j2 tries to SystemClassLoader when running on Google AppEngine. - </action> - <action issue="LOG4J2-1022" dev="rgoers" type="update"> - Allow a list of keys to be specified in the MDC pattern converter. - </action> - <action issue="LOG4J2-959" dev="ggregory" type="update"> - Fix FindBugs DM_DEFAULT_ENCODING bug in SimpleLogger.logMessage() and simplify code. - </action> - <action issue="LOG4J2-1036" dev="ggregory" type="update"> - Update Apache Flume from 1.5.2 to 1.6.0. - </action> - <action issue="LOG4J2-1041" dev="ggregory" type="update"> - Update MongoDB driver from 2.11.2 to 2.13.2. - </action> - <action issue="LOG4J2-1018" dev="ggregory" type="update"> - Update database tests from H2 1.3.175 to 1.3.176. - </action> - <action issue="LOG4J2-1070" dev="ggregory" type="update"> - Update Java Mail from 1.5.2 to 1.5.4. - </action> - <action issue="LOG4J2-1079" dev="ggregory" type="update"> - Update Jackson from 2.5.3 to 2.5.4. - </action> - <action issue="LOG4J2-1879" dev="ggregory" type="update"> - Update Jackson from 2.5.4 to 2.6.0. - </action> - <action issue="LOG4J2-1092" dev="ggregory" type="update"> - Update Jackson from 2.6.0 to 2.6.1. - </action> - <action issue="LOG4J2-1104" dev="ggregory" type="update"> - Update Apache Commons Compress from 1.9 to 1.10. - </action> - </release> - <release version="2.3" date="2015-05-09" description="GA Release 2.3"> - <action issue="LOG4J2-1009" dev="ggregory" type="fix" due-to="Mikael StÃ¥ldal"> - Incorrectly defined compressionType parameter to GelfLayout. - </action> - <action issue="LOG4J2-1008" dev="ggregory" type="fix" due-to="Ralph Goers, Gary Gregory"> - org.apache.logging.log4j.core.config.plugins.util.ResolverUtil.extractPath(URL) incorrectly converts '+' characters to spaces. - </action> - <action issue="LOG4J2-1007" dev="ggregory" type="fix" due-to="Ralph Goers, Gary Gregory"> - org.apache.logging.log4j.core.util#fileFromUri(URI uri) incorrectly converts '+' characters to spaces. - </action> - <action issue="LOG4J2-1003" dev="ggregory" type="fix" due-to="Dan Armbrust"> - JUL Logger.throwing is mis-mapped to ERROR when it should be TRACE. - </action> - <action issue="LOG4J2-965" dev="ggregory" type="fix" due-to="Khotyn Huang"> - System.out no longer works after the Console appender and JANSI are initialized. - </action> - <action issue="LOG4J2-998" dev="ggregory" type="update" due-to="Mariano Gonzalez"> - Make org.apache.logging.log4j.core.Logger#updateConfiguration protected. - </action> - <action issue="LOG4J2-995" dev="rgoers" type="update"> - Move UTF-8 constant from Charsets to Constants class. Remove Charsets class. - </action> - <action issue="LOG4J2-993" dev="rgoers" type="fix"> - Deadlock would occur if appender thread creates a new Logger during reconfiguration. - </action> - <action issue="LOG4J2-991" dev="rpopma" type="fix" due-to="Ryan Rupp"> - Async root logger config should default includeLocation to false. - </action> - <action issue="LOG4J2-985" dev="rpopma" type="fix" due-to="Sean Dawson"> - AbstractFilter should not implement equals() and hashCode(). - </action> - <action issue="LOG4J2-984" dev="ggregory" type="add" due-to="Jonas Höpfner"> - PatternLayout %highlight to support noConsoleNoAnsi like %style. - </action> - <action issue="LOG4J2-926" dev="ggregory" type="add" due-to="David Ohana"> - Truncate from the end of text format modifier. - </action> - <action issue="LOG4J2-980" dev="ggregory" type="fix" due-to="Mikhail Mazurskiy"> - Numerical overflow in BurstFilter not handled correctly. - </action> - <action issue="LOG4J2-981" dev="ggregory" type="fix" due-to="Mikhail Mazurskiy"> - Incorrect unlock in ProviderUtil. - </action> - <action issue="LOG4J2-966" dev="ggregory" type="fix"> - KeyStoreConfiguration.createKeyStoreConfiguration() ignores keyManagerFactoryAlgorithm. - </action> - <action issue="LOG4J2-976" dev="ggregory" type="fix" due-to="Matt Quinn"> - Using monitorInterval with YAML config file format causes JSONParseException. - </action> - <action issue="LOG4J2-964" dev="ggregory" type="fix" due-to="Jonne Jyrylä"> - StringFormattedMessage serialization is incorrect. - </action> - <action issue="LOG4J2-947" dev="ggregory" type="fix" due-to="Stefan Wehner"> - A new StatusLoggerAdmin listener is added to StatusLogger every time the log is reconfigured. - </action> - <action issue="LOG4J2-968" dev="ggregory" type="fix" due-to="Paul D Johe"> - SyslogLayout contains extra space. - </action> - <action issue="LOG4J2-967" dev="ggregory" type="fix" due-to="Stefan Wehner"> - log4j2.component.properties not read for all properties. - </action> - <action issue="LOG4J2-971" dev="ggregory" type="fix" due-to="Paul D Johe"> - Another bad priority in Syslog messages. - </action> - <action issue="LOG4J2-972" dev="ggregory" type="fix"> - org.apache.logging.log4j.core.net.ssl.TlsSyslogInputStreamReader does not need to create temp Integer objects. - </action> - <action issue="LOG4J2-974" dev="ggregory" type="fix" due-to="Daniel Galán y Martins"> - Typo in EventLogger documentation. - </action> - <action issue="LOG4J2-988" dev="ggregory" type="update"> - Update LMAX Disruptor from 3.3.0 to 3.3.2. - </action> - <action issue="LOG4J2-987" dev="ggregory" type="update"> - Migrate tests from Logback 1.1.2 to 1.1.3. - </action> - <action issue="LOG4J2-988" dev="ggregory" type="update"> - Update tests to use ActiveMQ from 5.10 to 5.11.1. - </action> - <action issue="LOG4J2-1004" dev="ggregory" type="update"> - Update Jackson from 2.5.1 to 2.5.3. - </action> - <action issue="LOG4J2-1005" dev="ggregory" type="update"> - Update Slf4j from 1.7.7 to 1.7.12. - </action> - </release> - <release version="2.2" date="2015-02-22" description="GA Release 2.2"> - <action issue="LOG4J2-938" dev="rpopma" type="fix" due-to="Mauro Molinari"> - (JMX) To avoid memory leaks when web applications are restarted, JMX notifications are sent from - the caller thread in web applications. For non-web applications notifications are sent from a background thread - as before. - </action> - <action issue="LOG4J2-957" dev="ggregory" type="fix" due-to="fatih guleryuz"> - Missing toUpperCase(Locale.ENGLISH). - </action> - <action issue="LOG4J2-956" dev="ggregory" type="fix" due-to="David Kellerman"> - Manual refers to Route "AppenderRef" attribute, should be "ref". - </action> - <action issue="LOG4J2-955" dev="rpopma" type="update"> - Documentation: clarify system properties to control status logger, improve troubleshooting FAQ entry. - </action> - <action issue="LOG4J2-950" dev="ggregory" type="update" due-to="Joel Edwards"> - Incorrect attribute name in PropertiesRewritePolicy example. - </action> - <action issue="LOG4J2-944" dev="ggregory" type="fix" due-to="Vinayaka Ramachandra"> - Log4j Flume appender is not adding millisecond to the event headers when the event is logged at 000 milliseconds. - </action> - <action issue="LOG4J2-941" dev="ggregory" type="add" due-to="Konstantinos Liakos"> - Allow JSON layout to create one compact log record per line. - </action> - <action issue="LOG4J2-933" dev="ggregory" type="add" due-to="ppiman at gmail.com"> - HTML layout should not use attribute minimalization for hr noshade. - </action> - <action issue="LOG4J2-895" dev="ggregory" type="add"> - Specify the SyslogAppender connect timeout value as part of the configuration. - The SyslogAppender takes a new parameter connectTimeoutMillis. - </action> - <action issue="LOG4J2-899" dev="ggregory" type="add"> - Specify the SocketAppender connect timeout value as part of the configuration. - The SyslogAppender takes a new parameter connectTimeoutMillis. - </action> - <action issue="LOG4J2-924" dev="ggregory" type="fix" due-to="Ryan Rupp"> - Log4j 1.2 Bridge doesn't map level ALL correctly in Category.getEffectiveLevel(). - </action> - <action issue="LOG4J2-931" dev="ggregory" type="fix" due-to="Robert Gacki"> - ConsoleAppender is missing @PluginFactory annotation at createAppender method. - </action> - <action issue="LOG4J2-919" dev="ggregory" type="fix" due-to="David Johle"> - Logging system fails to initialize if XInclude API is not available. - </action> - <action issue="LOG4J2-914" dev="ggregory" type="fix" due-to="Kaj Bjurman"> - ThrowableProxy.getExtendedStackTraceAsString causes NullPointerException. - </action> - <action issue="LOG4J2-912" dev="ggregory" type="fix"> - XML configuration does not report full error message for XInclude parser configuration problems. - </action> - <action issue="LOG4J2-903" dev="ggregory" type="fix" due-to="Mauro Molinari"> - ClassLoaderContextSelector uses ClassLoader.toString() as a key - </action> - <action issue="LOG4J2-834" dev="ggregory" type="fix" due-to="Nikita Koval, Leonard Broman, Thiago Kronig"> - ThrowableProxy throws NoClassDefFoundError. - </action> - <action issue="LOG4J2-893" dev="ggregory" type="fix"> - NullPointerException on filter when mapping JUL to Log4j2. - </action> - <action issue="LOG4J2-892" dev="ggregory" type="fix"> - JUL adapter does not map Log4j'2 FATAL level to a JUL level. - </action> - <action issue="LOG4J2-881" dev="ggregory" type="fix" due-to="Mariano Gonzalez"> - AbstractLifecycle should not implement equals() and hashCode(). - </action> - <action issue="LOG4J2-897" dev="ggregory" type="fix"> - Javadoc for org.apache.log4j.BasicConfigurator.configure() is incorrect. - </action> - <action issue="LOG4J2-891" dev="ggregory" type="fix"> - AbstractLifecycle should not implement equals() and hashCode(). - </action> - <action issue="LOG4J2-946" dev="ggregory" type="fix" due-to="artemonster"> - [docs] Using Log4j 2 in Web Applications: Update example (Log4jWebLifeCycle is not visible). - </action> - <action issue="LOG4J2-901" dev="ggregory" type="update" due-to="Tihomir MeÅ¡ÄiÄ, Siegfried Greisinger"> - Update docs for SyslogAppender: "No structured id name was supplied" - </action> - <action issue="LOG4J2-958" dev="ggregory" type="update"> - Update from Jackson 2.5.0 to 2.5.1. - </action> - <action issue="LOG4J2-925" dev="ggregory" type="update"> - Update from Jackson 2.4.4 to 2.5.0. - </action> - <action issue="LOG4J2-910" dev="ggregory" type="update"> - Update Jackson from 2.4.3 to 2.4.4. - </action> - <action issue="LOG4J2-881" dev="ggregory" type="update"> - Update Jackson from 2.4.2 to 2.4.3. - </action> - <action issue="LOG4J2-882" dev="ggregory" type="update"> - Update maven-core from 3.1.0 to 3.2.3. - </action> - <action issue="LOG4J2-883" dev="ggregory" type="update"> - Update tests from org.apache.felix.framework 4.2.1 to 4.4.1. - </action> - <action issue="LOG4J2-884" dev="ggregory" type="update"> - Update org.eclipse.osgi from 3.6.0 to 3.7.1. - </action> - <action issue="LOG4J2-900" dev="ggregory" type="update"> - Update Apache Flume from 1.5.0.1 to 1.5.2. - </action> - </release> - <release version="2.1" date="2014-10-19" description="GA Release 2.1"> - <action issue="LOG4J2-676" dev="rgoers" type="fix" due-to="Stefan Bodewig"> - Some typo fixes and enhancements for the site. - </action> - <action issue="LOG4J2-868" dev="mattsicker" type="add"> - Add ShutdownCallbackRegistry interface for customizable shutdown callback handling. This is particularly - useful for application servers that wish to integrate with Log4j 2. - </action> - <action issue="LOG4J2-866" dev="rpopma" type="fix" due-to="Gerard Weatherby"> - Documentation: fixed missing closing parenthesis in code example. - </action> - <action issue="LOG4J2-862" dev="mattsicker" type="fix" due-to="Michael Sutherland"> - Fixed classloader issue that prevented Log4j from finding the implementation when used in a custom Ant task. - </action> - <action issue="LOG4J2-589" dev="rpopma" type="add"> - Supported filtering on custom log levels in configuration. - </action> - <action issue="LOG4J2-861" dev="rpopma" type="fix"> - Documentation: fix broken links on left navigation Extending Log4j Configuration sub-menu. - </action> - <action issue="LOG4J2-856" dev="rpopma" type="add"> - Documentation: add sections on the JUL Adapter, IO Streams and NoSQL Appenders to the Maven and Ivy page. - </action> - <action issue="LOG4J2-797" dev="rpopma" type="fix" due-to="Andreas Rytina"> - Documentation: clarified why log4j-core is a compile time dependency in Maven and Ivy page. - </action> - <action issue="LOG4J2-855" dev="rpopma" type="fix"> - Documentation: fix broken links on Appenders manual page. - </action> - <action issue="LOG4J2-807" dev="rpopma" type="fix"> - Prevent NPE when configuration with AsyncLogger/AsyncRoot is reloaded. - </action> - <action issue="LOG4J2-848" dev="ggregory" type="add"> - Add a Java lookup to provide nicely formatted runtime version information. - </action> - <action issue="LOG4J2-809" dev="mattsicker" type="add"> - Move reflection utility class to API's private utility classes. - </action> - <action issue="LOG4J2-845" dev="mattsicker" type="update"> - Add 2.1.0 to compatible versions in Log4j API ProviderUtil and update Log4jAPIVersion to 2.1.0 in - core META-INF/log4j-provider.properties. - </action> - <action issue="LOG4J2-833" dev="rpopma" type="add"> - Documentation: added Runtime Dependencies link to left nav-bar on site. - </action> - <action issue="LOG4J2-816" dev="rpopma" type="add"> - Documentation: added section on XInclude to user manual Configuration page. - </action> - <action issue="LOG4J2-678" dev="rpopma" type="fix" due-to="Matt Sicker"> - Documentation: fixed minor issues with Log4j2 web site/documentation. - </action> - <action issue="LOG4J2-844" dev="rpopma" type="update"> - Update JMH to 1.1 from 0.7.2. - </action> - <action issue="LOG4J2-843" dev="rpopma" type="fix"> - Migrate JpaHyperSqlAppenderTest JUnit performance test to log4j-perf. - </action> - <action issue="LOG4J2-842" dev="rpopma" type="fix"> - Migrate JpaH2AppenderTest JUnit performance test to log4j-perf. - </action> - <action issue="LOG4J2-841" dev="rpopma" type="fix"> - Migrate JdbcHyperSqlAppenderTest JUnit performance test to log4j-perf. - </action> - <action issue="LOG4J2-840" dev="rpopma" type="fix"> - Migrate JdbcH2AppenderTest JUnit performance test to log4j-perf. - </action> - <action issue="LOG4J2-830" dev="rpopma" type="fix"> - Respect external interrupt signal to allow application shutdown after joining AsyncAppender thread. - </action> - <action issue="LOG4J2-813" dev="ggregory" type="fix" due-to="David Erichsen, Brandon Barry"> - MarkerManager Log4jMarker.hasParents() returns opposite of correct result. - </action> - <action issue="LOG4J2-785" dev="rpopma" type="fix"> - Documentation: fixed capitalization inconsistency in user manual example config. - </action> - <action issue="LOG4J2-829" dev="rpopma" type="fix"> - Fixed issue in RollingFile filePattern: backslashes are path separators, not escape characters. - </action> - <action issue="LOG4J2-547" dev="mattsicker" type="add"> - Add the Log4j IOStreams component. - </action> - <action issue="LOG4J2-431" dev="rpopma" type="add" due-to="Claude Mamo"> - Added Memory-Mapped File Appender. - </action> - <action issue="LOG4J2-832" dev="ggregory" type="fix" due-to="Seth Leger"> - ThrowableProxy fails if a class in logged stack trace throws java.lang.Error from initializer - </action> - <action issue="LOG4J2-831" dev="rpopma" type="update"> - Documentation: updated FAQ "which jars" diagrams for JUL bridge and 2.1 version. - </action> - <action issue="LOG4J2-827" dev="mattsicker" type="add"> - Support use of TypeConverter classes through the standard Plugin system. - </action> - <action issue="LOG4J2-745" dev="mattsicker" type="fix" due-to="Scott Harrington"> - Avoid ConverterKey plugin clashes by using a more predictable plugin loading infrastructure. - Plugins have been segmented into three parts: class path, user-specified packages, and OSGi bundles. - </action> - <action issue="LOG4J2-798" dev="mattsicker" type="fix" due-to="Scott Harrington"> - Fixed plugin scanning redundancy causing massive slowdowns in certain environments. - </action> - <action issue="LOG4J2-753" dev="rpopma" type="fix"> - Reduced CachedClock thread contention. - </action> - <action issue="LOG4J2-819" dev="mattsicker" type="fix" due-to="Gary Gregory"> - Fixed memory leak in Tomcat 6 caused by clock background threads unintentionally - started by Tomcat after web application stop. - </action> - <action issue="LOG4J2-825" dev="mattsicker" type="add"> - Add simple validation constraint annotations for the Plugin system. - </action> - <action issue="LOG4J2-428" dev="ggregory" type="add" due-to="Mark Paluch, Mikael StÃ¥ldal"> - Implement a GELF layout. - </action> - <action issue="LOG4J2-391" dev="rgoers" type="fix" due-to="Kamal Bahadur"> - FlumePersistentManager now handles LockConflictExceptions in Berkeley Db when sending a batch. - </action> - <action issue="LOG4J2-782" dev="mattsicker" type="fix"> - Remove invalid Oracle Maven repository. - </action> - <action issue="LOG4J2-780" dev="mattsicker" type="update"> - Update Spring Framework to 3.2.11.RELEASE from 3.2.8.RELEASE. - </action> - <action issue="LOG4J2-815" dev="mattsicker" type="update"> - Unify the two JMS appenders into a single appender. Configurations
<TRUNCATED>
