Java Logging - 完成日志记录,我的日志文件在哪里

时间:2012-05-31 14:47:25

标签: java logging netbeans glassfish java.util.logging

我正在使用java.util.logging,NetBeans IDE和Glassfish Server。

我已经加载了自定义日志属性文件。应用程序正在执行日志记录,但缺少日志文件。

handlers = java.util.logging.FileHandler
java.util.logging.ConsoleHandler.level = ALL
java.util.logging.FileHandler.pattern = %h/java%u.log
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.FileHandler.level = INFO
java.util.logging.ConsoleHandler.level = ALL

是我的日志文件属性,以下是加载它的代码:

Properties props = new Properties();
Logger log = Logger.getLogger(ServiceInvoker.class.getName());
log.setLevel(Level.ALL);
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
URL resource = classLoader.getResource("log.properties");
File file = new File(resource.toURI());
FileInputStream fis = new FileInputStream(file);
props.load(fis);
LogManager.getLogManager().readConfiguration(fis);

我检查了位置C:\ Users \ user_name的日志文件。 当我不使用此日志记录时,我可以在NetBeans服务器控制台中看到日志消息,当我使用此日志记录时,控制台中没有消息,并且缺少日志文件!请帮忙。

1 个答案:

答案 0 :(得分:1)

        ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
        InputStream is = classLoader.getResourceAsStream("log.properties");
        LogManager.getLogManager().readConfiguration(is);

是正确的代码。