Ceki Gülcü, the founder of the log4j project, is currently working on a successor called [[http://logback.qos.ch/|logback]] (licensed under [[http://www.gnu.org/licenses/lgpl.html|GNU LGPL]]). However, development of log4j goes on. See this [[http://marc.theaimsgroup.com/?l=log4j-user&m=115764695507057&w=2|posting]].

According to Curt Arnold (posting of Jun 5, 2007):

Development on '''log4j 1.3''' has effectively ended in preference for working on '''log4j 2.0''' designed for JDK 1.5 and higher and continued support of '''log4j 1.2''' for existing applications and earlier JDKs. log4j 1.3 was stuck in having too many compatibility issues to be just a dot release but not a radical enough change to address some long standing issues. Many months of work were done to improve the compatibility between log4j 1.3 and log4j 1.2, but many hard issues still remained. It seemed better to bring features originally designed for log4j 1.3 back so they could be used with deployed log4j 1.2 versions and move on to something for the modern era. Some early experiments for log4j 2.0 are in the sandbox, but it hasn't been built out to a functioning framework yet.

logback does position itself as a migration path for log4j users. The development model, design objectives and licenses differ between logback and log4j and the resulting products will have different strengths. As a log4j core developer, I feel that I can't become intimately familiar with logback code due to its license and the potential repercussions of an accidental code leakage into log4j, so I'm not going to be in a position to give a point by point comparison on logback and log4j 1.2 or log4j 2.0.

Log4j 1.x will be superceded by [[http://logging.apache.org/log4j/2.x|Log4j 2.x]] which is actively under development.

The Apache Software Foundation

Community-led development since 1999.

Apache Log4j 1.x

What is it?

Log4j is a fast and flexible framework for logging application debugging messages.

With log4j it is possible to enable logging at runtime without modifying the application binary. The log4j package is designed so that these statements can remain in shipped code without incurring a heavy performance cost. Logging behavior can be controlled by editing a configuration file, without touching the application binary.

Users are encouraged to first search the Main log4j FAQ, this wiki's FrequentlyAskedQuestions, and the mail archives to see if a question has been previously answered. If not satisfied with the results of this search, then by all means, please post your questions.

UsefulCode - This is a forum for developers to list useful classes or code bits related to using log4j. Please feel free to list pieces of code that you have found useful. Chances are there are others out there that will find it useful as well.

ContributingCode - Have some cool code, patches, or classes you want to submit to the log4j project? This page describes how to contribute it.

ChainsawHelp - Go here to help build a Chainsaw V2 FAQ (and find other tricks there as well).