【发布时间】:2021-02-05 22:53:12
【问题描述】:
我是 log4j 的新手,并尝试以编程方式使用 log4j,而不是使用 log4j.xml 或 log4j.properties 文件。
但是当我运行代码时,它只记录致命和错误消息并跳过其他消息。
我已尝试更改“rootlogger.setLevel(Level.DEBUG);”到“rootlogger.setLevel(Level.All);”但它给出了相同的输出。
有人可以帮忙吗?
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.PatternLayout;
import org.apache.log4j.ConsoleAppender;
public class ProgrammaticLog4jExample {
private static final Logger logger = Logger.getLogger(ProgrammaticLog4jExample.class);
public static void main(String[] args) {
// creates pattern layout
String conversionPattern = "%-7p %d [%t] %c %x - %m%n";
PatternLayout layout = new PatternLayout(conversionPattern);
// creates console appender
ConsoleAppender consoleAppender = new ConsoleAppender();
consoleAppender.setLayout(layout);
consoleAppender.activateOptions();
// configure the root logger
Logger rootlogger = Logger.getRootLogger();
rootlogger.setLevel(Level.DEBUG);
rootlogger.addAppender(consoleAppender);
// creates a custom logger and messages
logger.debug("this is a debug log message");
logger.info("this is a information message");
logger.warn("this is a warning message");
logger.fatal("this is the fatal message");
logger.error("This is the error message");
}
}
输出:
19:07:58.003 [main] FATAL log4jExample.ProgrammaticLog4jExample - 这是致命消息
19:07:58.006 [main] ERROR log4jExample.ProgrammaticLog4jExample - 这是错误消息
输出图像:
我在我的项目类路径中为 log4j 使用以下 jar 文件:
【问题讨论】: