SLF4J

Simple Logging Facade for Java
Developer(s) Ceki Gülcü
Stable release 1.7.12 / March 26, 2015
Written in Java
Operating system Cross-platform
Type Logging Tool
License MIT License
Website http://www.slf4j.org/

Simple Logging Facade for Java (SLF4J) provides a Java logging API by means of a simple facade pattern. The underlying logging backend is determined at runtime by adding the desired binding to the classpath and may be the standard Sun Java logging package java.util.logging,[1] log4j, logback[2] or tinylog.[3][4]

The separation of the client API from the logging backend reduces the coupling between an application and any particular logging framework. This can make it easier to integrate with existing or third-party code or to deliver code into other projects that have already made a choice of logging backend.

SLF4J was created by Ceki Gülcü as a more reliable alternative to Jakarta Commons Logging framework. A research performed in 2013 on 10,000 GitHub projects found that the most popular Java library is slf4j, with 30.7% of projects using it.[5]

Similarities and differences with log4j 2.x

Apache log4j 2.x supports all slf4j features.[6]

Similarities and differences with log4j 1.x

 private static final Logger LOG = LoggerFactory.getLogger(Wombat.class);
 LOG.debug("There are now " + count + " user accounts: " + userAccountList); // slow
 LOG.debug("There are now {} user accounts: {}", count, userAccountList);    // faster

See also

References

External links