java.util.logging 有 BUG ,请高手指点,谢谢!!

abcdhy 2005-03-12 04:23:44

import java.util.logging.*;

public class LoggingTest {
public static void main(String args[]) {

Logger log = Logger.getAnonymousLogger();
log.setLevel(Level.FINEST);
if(log.isLoggable(Level.FINEST))
log.info("FINEST");
log.info(log.getLevel().toString());
System.out.println ("*********************");
log.finest("FINEST 消息");
log.finer("FINEST 消息");
log.fine("FINE 消息");
log.config("CONFIG 消息");
log.info("INFO 消息");
log.warning("WARNING 消息");
log.severe("SEVERE 消息");
}
}
我明明设定输出级别为 Level.FINEST
可是为什么还是只有 info 以上级别的才能输出啊??

请高手指点,谢谢!!
...全文
250 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
abcdhy 2005-03-15
  • 打赏
  • 举报
回复
但我可以使用 log.setLevel(Level.FINEST);
来设置到 info 更高的级别!!

Logger.setLevel() ; 有什么用啊??

不是用来设置整个 logger 的 Level 的吗??

可是为什么只能往高的设置,不能往低的设置.
abcdhy 2005-03-15
  • 打赏
  • 举报
回复
我看了你贴的文档,知道了, logger 在 handler 的上层, 所以,logger 只能向上设,不能向下设置,谢谢了!
taglib 2005-03-15
  • 打赏
  • 举报
回复
这Logger就是这么设计的,这些Handler有自己的规定吧
taglib 2005-03-14
  • 打赏
  • 举报
回复
不是那么简单的事情,每个Logger还有相应的一堆Handler,它们的默认Level也是INFO,你需要设置这些Handler的Level,参考这篇文章

http://www.onjava.com/pub/a/onjava/2002/06/19/log.html?page=2

或者,试试



Logger log = Logger.getAnonymousLogger();

Handler[] handlers = Logger.getLogger("").getHandlers();

for ( int index = 0; index < handlers.length; index++ ) {
handlers[index].setLevel( Level.FINEST );
}

log.setLevel(Level.FINEST);

.....
abcdhy 2005-03-14
  • 打赏
  • 举报
回复
怎么,很少有人使用 java.util.logging 吗??
oneonone 2005-03-13
  • 打赏
  • 举报
回复
哪位高人来回答,俺也听听.
xitianjile 2005-03-12
  • 打赏
  • 举报
回复
mark!
我不是高人!!

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧