java.util.logging:动态设置日志级别

时间:2013-09-17 11:58:34

标签: java netbeans java.util.logging

我正在尝试以下代码示例(基于here的代码)。我的目标是从运行时间设置日志记录的级别。

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。

1 个答案:

答案 0 :(得分:0)

我也需要设置我的处理程序级别。在我的主要部分添加了以下代码:

Logger root = Logger.getLogger("");
Handler[] handlers = root.getHandlers();
for(Handler h: handlers){
    h.setLevel(Level.INFO);
}

当然,您可以根据需要设置等级。

再次感谢指导我解决问题的评论

相关问题