Java Logger-class And Method Code Example


Here is an example of how you can use the Logger class from the logback.classic package:

import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.Logger;
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.classic.spi.LoggingEvent;
import ch.qos.logback.core.Appender;
import org.slf4j.LoggerFactory;

public class MyClass {
  public static void main(String[] args) {
    // Get the logger
    Logger logger = (Logger) LoggerFactory.getLogger(MyClass.class);

    // Get the logger context
    LoggerContext context = logger.getLoggerContext();

    // Set the logger level to DEBUG
    logger.setLevel(Level.DEBUG);

    // Check if the logger is enabled for the DEBUG level
    boolean isDebugEnabled = logger.isDebugEnabled();
    System.out.println(isDebugEnabled);  // prints true

    // Log a message at the DEBUG level
    logger.debug("This is a debug message");

    // Add an appender to the logger
    Appender<ILoggingEvent> appender = new MyAppender();
    appender.setContext(context);
    appender.start();
    logger.addAppender(appender);

    // Log a message using the appender
    ILoggingEvent event = new LoggingEvent();
    event.setLevel(Level.ERROR);
    event.setMessage("This is an error message");
    logger.callAppenders(event);
  }
}

class MyAppender extends Appender<ILoggingEvent> {
  @Override
  protected void append(ILoggingEvent event) {
    System.out.println(event.getLevel() + ": " + event.getMessage());
  }
}

The Logger class is the central class in the logback package. It provides methods for logging messages and managing loggers and appenders.

In this example, we use the setLevel and isDebugEnabled methods to set the logger level and check if the logger is enabled for the DEBUG level. We also use the debug method to log a message at the DEBUG level.