有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

无法使用Java日志API记录低于信息日志级别的任何内容

我已经设置了(logger类构造函数)日志记录,如下所示-

 Log() {


        loggerObj = Logger.getLogger("");

        //Create console handler and set its level and then setup its formatter 
        handler = new ConsoleHandler();
        handler.setLevel(Level.FINEST);
        formatter = new LogFormatter();
        handler.setFormatter(formatter);

        //assign handler to logger objs
        loggerObj.setUseParentHandlers(false);
        loggerObj.addHandler(handler);

    }

日志类的成员为-

    static Logger loggerObj;
    ConsoleHandler handler;
    LogFormatter formatter;

即使我已经将级别设置为最佳,并将UseParentHandlers设置为false,为什么我不能在信息下面记录任何内容

编辑-根据注释-在我修改全局日志之后。属性文件并将level设置为ALL,它就工作了。所以我想我的问题是为什么SetUseParentHandler不起作用


共 (2) 个答案

  1. # 1 楼答案

    So I think my question is why setUseParentHandlers isn't working?

    没有证据表明setUseParentHandlers不起作用

    更确切地说,似乎正在发生的是,正在使用默认级别INFO创建记录器。尝试通过调用Logger.setLevel(FINEST)手动设置

  2. # 2 楼答案

    正如勘误表中提到的,^{}指定是否向日志树上递归发送数据。除非您明确不希望日志消息传播到作为此消息父对象的记录器,否则该命令不应该影响它们在单个调用上下文中的行为