[logback-dev] programmatic configuration
The complete logback manual documents the latest version of logback framework. In over 150 pages and dozens of concrete examples, it covers both basic and advanced logback features, including: the overall logback architecture discussion of best logback practices and anti-patterns logback configuration scripts in XML format appenders encoders layouts filters mapped diagnostic contexts Joran, logback's configuration system The logback manual describes the logback API in considerable detail, including its features and design rationale. Authored by Ceki Gülcü and Sébastien Pennec, the main contributors to the logback project, the logback manual is intended for developers already familiar with the Java language but new to logback, as much as for experienced logback users. With the aid of introductory material and many examples, new users should quickly come up to speed. Logback Manual
It's probably not necessary to start this article with a mini-lecture on why logging, like unit-testing, is a Good Thing, so all I will say is logging is important not only during development but also invaluable in diagnosing runtime problems, once a solution is delivered and running. From here on I'm going to assume you're convinced. So, you know you should be logging, but how? And which of the many logging frameworks should you use? This article sets out to answer the first question, showing you how to get started logging in Java, using the NetBeans IDE, and offers an opinion on the answer to the second question. There are several well-established ways to do logging in Java but the best approach I have come across so far is to use slf4j (the Simple Logging Facade for Java) for all logging statements in source code. Logging in NetBeans using slf4j
The Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks (e.g. java.util.logging, logback, log4j) allowing the end user to plug in the desired logging framework at deployment time. Before you start using SLF4J, we highly recommend that you read the two-page SLF4J user manual. Note that SLF4J-enabling your library implies the addition of only a single mandatory dependency, namely slf4j-api.jar. If no binding is found on the class path, then SLF4J will default to a no-operation implementation. In case you wish to migrate your Java source files to SLF4J, consider our migrator tool which can migrate your project to use the SLF4J API in just a few minutes. In case an externally-maintained component you depend on uses a logging API other than SLF4J, such as commons logging, log4j or java.util.logging, have a look at SLF4J's binary-support for legacy APIs.
Apache log4j has three development branches: a stable branch, 1.2 ; a discontinued branch, 1.3 ; and an experimental branch, 2.0 . Apache log4j 1.2 releases are widely deployed. Development on the 1.2 branch is generally limited to bug fixing and minor enhancements. Apache log4j 1.3 alpha releases are in limited use. Apache log4j 1.3 added many interesting features, but was compatibility with log4j 1.2 was problematic. Many features original developed for log4j 1.3 have been back-ported as companions for log4j 1.2. Log4j
Java TM Logging Overview
The Logging Component When writing a library it is very useful to log information. However there are many logging implementations out there, and a library cannot impose the use of a particular one on the overall application that the library is a part of. The Logging package is an ultra-thin bridge between different logging implementations. A library that uses the commons-logging API can be used with any logging implementation at runtime. Commons Logging