gpt4 book ai didi

java - 调试日志记录不适用于特定处理程序

转载 作者:行者123 更新时间:2023-12-01 18:34:18 25 4
gpt4 key购买 nike

我正在使用 JDK14Logger 实现 apache commons-logging 框架。调试日志没有出现,并且仅当我将根记录器设置为“FINE”时才会出现。我的理解是,设置为特定处理程序的日志级别应该覆盖根记录器的日志级别。然而,这并没有发生。

# The following creates the console handler
handlers=java.util.logging.ConsoleHandler, java.util.logging.FileHandler

# Set the default logging level for the root logger
.level=FINE

# Set the default logging level
java.util.logging.ConsoleHandler.level=FINE
java.util.logging.FileHandler.level=FINEST

# log level for the "com.rst.example" package


# Set the default formatter
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter

# Specify the location and name of the log file
java.util.logging.FileHandler.pattern=D:/test.log

测试类:

public class Test {
private Log logger = LogFactory.getLog(Test.class.getName());

static {
System.getProperties().setProperty("java.util.logging.config.file","log-config.properties");
}

public static void main(String[] args) {
//-Djava.util.logging.config.file=src/main/resources/log-config.properties

Test test = new Test();

test.logger.info("info from main");
test.logger.error("error from main");
test.logger.fatal("fatal from main");
System.out.println("is dubug enabled? :" + test.logger.isDebugEnabled());
test.logger.debug("debug from main");

}

}

最佳答案

默认情况下,所有 JDK 记录器都会将日志记录发布到根记录器的处理程序。 ConsoleHandler 的默认级别是 INFO .

My understanding is that log level set to specific handlers should override log level of root logger. However, that is not happening.

事实并非如此,也并非如此。 Use DebugLogging to test your configuration file against the JDK logging .

The debug logs are not appearing, and they appear only when I set the root logger to FINE.

输出被发布到处理程序。不出现意味着您的处理程序未附加,级别未设置为您期望的级别,或者处理程序附加到不在发布路径上的子记录器。

修改链接答案中的 DebugLogging 类,以包含您的配置和执行日志记录的 apache-commons 代码。不要删除 JDK 日志记录代码。该代码的输出将引导您解决问题。

关于java - 调试日志记录不适用于特定处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60089715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com