[*] Changes that are 100% compatible with existing client code.
[**] Changes that requiring little or no modification to existing
client code.
[***] Changes requiring important modifications to existing client code.
June 18th, 2005
- Release of version 1.2.11
- Fixed bug #34491 whereby the class o.a.log4j.or.jms.MessageRenderer
would not be compiled in the build.jms target. Bug reported by Andy
McBride. http://issues.apache.org/bugzilla/show_bug.cgi?id=34491 [*]
April 28th, 2005
- Release of version 1.2.10
- Version 1.2.10 was not released following the accepted rules and process of
the log4j project and Logging Services Project and was recalled and removed.
Please do not use version 1.2.10, it is not an official log4j release.
November 1st, 2004
- Release of version 1.2.9
Log4j version 1.2.9, is identical to version 1.2.8, except that
several key methods have been deprecated in preparation for version
1.3.0, the next major release of log4j. These changes are intended to
enforce the rule that client code should never refer to the Category
class directly, but use the Logger class instead. Similarly, client
code should not refer to the Priority class but to the Level class
instead.
For a more detailed discussion, refer to the document entitled
preparing for log4j 1.3 at:
http://www.qos.ch/logging/preparingFor13.jsp
February 19th, 2003
- Release of version 1.2.8
- Fixed bug #11570 whereby XMLAppender would throw a
NullPointerException if the input message was null. Many thanks to
David Vandegrift for reporting the bug and to Hendrik Brummermann for
supplying the patch. [*]
- Fixed bug #12366 whereby various versions of Xerces would not parse
log4j configuration scripts expressed in XML format. [*]
- Fixed bug #14827. The "removes" buffer used in the flushBuffer() method
of JDBCAppender is now cleared, solving the memory leak. Thanks to John
Landers for reporting the bug and suggesting the fix. [*]
- Fixed bug #15599. SocketAppender now honors ReconnectionDelay of 0.
Many thanks to Scott Schram for reporting the bug and providing the fix. [*]
October 9th, 2002
- Release of version 1.2.7
- Log4j now searches for the file log4j.xml as well as the file
log4j.properties during log4j initialization. [*]
July 31st, 2002
- Release of version 1.2.6
- Addition of new options in JMSAppender and new command line arguments in
JMSSink. [*]
- Added new method getLoggerName() in LoggingEvent class. The
getLoggerName is the preferred way for accessing the logger
name. The public access categoryName field should not be accessed
directly. Similarly, added the getLevel method which is now the
preferred way of accessing the event's level. The public access
level field should not be accessed directly. The javadocs now mark
the categoryName and level fields as deprecated.
Modified existing appenders to comply with these new directives. [*]
- Log4j now will check if a system property named "log4j.ignoreTCL"
is set. If it is set, then it will ignore the Thread Context
ClassLoader when loading classes. This solves the irritating
"appender is not assignable to Appender" messages observed when
log4j.jar is loaded by multiple class loaders.
The error reporting for this problem was also improved. [*]
- Fixed bug #10528 whereby calling the MDC.get method with a null
argument would throw a NullPointerException. [*]
July 5th, 2002
- Release of version 1.2.5
- Minor changes and bug fixes in LF5. [*]
- Calling an AsyncAppender close method also closes the embedded
appender instances. This resolves bug #10185 submitted by Paul
Voutier. [*]
June 12th, 2002
- Release of version 1.2.4
- The JDBCAppender is marked as slated for replacement. Do not build
critical software using it.
- Added LF5 documentation and examples. Further tests are required
for full integration. [*]
- XMLLayout can now output messages which contain embedded CDATA
sections. This resolves bug #9750. Many thanks to Michael
A. McAngus for supplying the relevant patch. [*]
- The dispatcher thread associated with AsyncAppender is now marked
as a deamon thread. This resolves bug #9750. [*]
- Added missing NTEventLogAppender.dll as reported in bug #9606. [*]
- In response to bug report 9435, the log4j.dtd was changed so that
<log4j:event> is now made of logger and level attributes instead of
category and priority. Changed XMLLayout to conform to the
DTD. Chainsaw was changed to adapt to the XMLLayout. [*]
- Added missing LevelRangeFilter file. [*]
May 24th, 2002
- Release of version 1.2.3
- Fixed bug #9285 where the SyslogAppender would incorrectly compute
the length of the datagram to send to the remote syslogd host.
Reported by Mamoru Kadota. [*]
- Fixed bug #8505 where the stack trace of exception would not be
properly printed on the Compaq tru64 Unix platform. Initially
reported by Fabrice Claes and later by Espen H. Kolstad who also
provided the fix. [*]
May 22nd, 2002
- Release of version 1.2.2
- Log4j configurators take the "NULL" string value as a synonym for
"INHERITED". Both of these two strings are legal level values for
setting the level of a logger. Both values are case insensitive. [*]
- When loading component classes, log4j will now first attempt to use
the Thread Context Loader and if that fails, it will use
Class.forName. In log4j 1.2 and 1.2.1, only Class.forName was used
and the TCL was ignored. This change is a response to bug #9305
opened by Scott M. Stark. [*]
May 17th, 2002
- Release of version 1.2.1
- This minor release fixes bug #9155 reported by Nicko Cadell.
LoggingEvent.getMDCCopy() method now sets mdcCopyLookupRequired
instead of ndcLookupRequired. This bug would cause the wrong MDC
information to appear on a log server. It could only occur if the
client wrapped an AsyncAppender around a SocketAppender or if the
server used an AsyncAppender for its logging. [*]
May, 2002
- Release of version 1.2
- Fixed bug #8527. A closed TelnetAppender would continue waiting
for connections even if its ServerSocket was closed. This caused
the TelnetSocket to sit in a loop and complain about the closed
socket. [*]
- AsyncAppender throws NullPointerException problem. The bug was actually in
AppenderSkeleton. See bug #5444 details. [*]
- Added support for recursive variable substiuton as requested by
Eric Chastan. [*]
- SocketNode now used a BufferedInputStream as suggested by Kok Chong
in bug report #3933. [*]
- Fixed a problem with DailiyRollingAppender which would not
correctly compute the rollover period in certain timezones. See bug
report #7550. [*]
- Fixed documentation bug #2726 in FAQ.html. [*]
- In WriterAppender, fixed bug #2383 by adding a flush statement in the
writeFooter method. [*]
- In XMLLayout, Fixed bug #7550 by escaping the method attribute. The
XMLLayout also outputs each item of a stack trace in a separate
line. [*]
- Fixed bug #5932 as suggested by Heikki Linnakangas. The
LoggingEvent.getMDCCopy method now clones the MDC instead of just
referencing it. [*]
(rc1)
- The ANT build script was modified to use jar files specified in
the build.properties file instead of the CLASSPATH environment
variable. The build.properties file depends on local paths and is
supplied by the user. The build.properties.sample file is included
in the distribution. The build.sh and build.bat scripts have
been removed. This is the way many other jakarta projects build their
projects. The jar files in the dist/l