java.util.logging:动态设置日志级别
我正在尝试以下代码示例(基于中的代码)。我的目标是从运行时开始设置日志记录的级别java.util.logging:动态设置日志级别,java,netbeans,java.util.logging,Java,Netbeans,Java.util.logging,我正在尝试以下代码示例(基于中的代码)。我的目标是从运行时开始设置日志记录的级别 package logchecker; import java.util.logging.*; public class Logchecker { private static final Logger logger = Logger.getLogger(Logchecker.class.getName()); public static void main(String[] args) {
package logchecker;
import java.util.logging.*;
public class Logchecker {
private static final Logger logger = Logger.getLogger(Logchecker.class.getName());
public static void main(String[] args) {
System.out.println("This logger's level is " + logger.getLevel()); // null
logger.setLevel(Level.ALL);
System.out.println("This logger's level is " + logger.getLevel()); // null
logger.info("TEST");
logger.finest("FINEST TEST");
}
}
输出为:
此记录器的级别为空
这个记录器的级别是所有
2013年9月17日下午1:46:31 logchecker.logchecker main
信息:测试
它显然不输出log.finest
。
我错过了什么?
我正在使用NetBeans 7.3运行。我还需要设置我的处理程序级别。将以下代码添加到my main:
Logger root = Logger.getLogger("");
Handler[] handlers = root.getHandlers();
for(Handler h: handlers){
h.setLevel(Level.INFO);
}
当然,您可以根据需要设置级别
再次感谢您的评论指导我找到解决方案我还需要设置我的处理程序级别。将以下代码添加到my main:
Logger root = Logger.getLogger("");
Handler[] handlers = root.getHandlers();
for(Handler h: handlers){
h.setLevel(Level.INFO);
}
当然,您可以根据需要设置级别
再次感谢您的评论,让我找到解决方案也许关于SO的问题可以帮助您。这可能是重复的感谢。这确实是同样的问题。如果我只知道搜索处理程序…也许问题就可以帮助你。这可能是重复的谢谢。这确实是同样的问题。如果我只知道搜索handler。。。