Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-564

The name of the SLF4JLogger implementation should point to Log4j 2

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Done
    • 2.0-rc1
    • 2.0-rc2
    • SLF4J Bridge
    • All (tried on Ubuntu 12 x64, Windows 7 x64, Mac OS X Maverick)

    Description

      The name of org.slf4j.impl.SLF4JLogger should indicate somehow that we are dealing with Log4j 2.

      Right now the class is org.slf4j.impl.SLF4JLogger

      These are the names from other bindings:
      nop : org.slf4j.helpers.NOPLogger
      simple : org.slf4j.impl.SimpleLogger
      jdk : org.slf4j.impl.JDK14LoggerAdapter
      jcl : org.slf4j.impl.JCLLoggerAdapter
      log4j : org.slf4j.impl.Log4jLoggerAdapter
      logback : ch.qos.logback.classic.Logger

      Every one of them indicates what is the binding for, in the class name (all slf4j bindings), or as part of package name (logback).

      Use case: "hook" into the functionality of the logger under slf4j to control stuff not accessible through slf4j.

      Example:
      http://code.google.com/p/okapi/source/browse/#git%2Fapplications%2Frainbow%2Fsrc%2Fmain%2Fjava%2Fnet%2Fsf%2Fokapi%2Fapplications%2Frainbow%2Flogger

      Code to reproduce this:
      =========
      import org.slf4j.Logger;
      import org.slf4j.LoggerFactory;

      public class LogHandlerFactory {
      static public void main(String [] args)

      { Logger localLogger = LoggerFactory.getLogger(LogHandlerFactory.class); String realLogger = localLogger.getClass().getName(); System.out.printf("%-8s: %s%n", args.length > 0 ? args[0] : "???", realLogger); }

      }
      =========

      Thank you,
      Mihai

      Attachments

        Activity

          People

            mattsicker Matt Sicker
            mnita_2000 Mihai Nita
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: