【问题标题】:java.util.logging won't log to filejava.util.logging 不会记录到文件
【发布时间】:2018-10-12 08:03:51
【问题描述】:

我正在努力让java.util.logging 登录到文件,而不仅仅是登录到 Eclipse 中的控制台。

public class TestDefaultConfiguration {

    private static Logger logger = Logger.getLogger(TestDefaultConfiguration.class.getName());

    public static void main(String[] args) {
        System.out.println("-- main method starts --");
        logger.info("an info msg");
        logger.warning("a warning msg!");
        logger.severe("a severe msg!");
    }
}

以下是属性:

C:\Program Files\Java\jre1.8.0_152\lib\logging.properties

我将默认属性文件编辑为:

.level= INFO
# default file output is in user's home directory.
#java.util.logging.FileHandler.pattern = %h/java%u.log
java.util.logging.FileHandler.pattern = C:/temp/test/MyLogFile2.log

java.util.logging.FileHandler.limit = 50000
java.util.logging.FileHandler.count = 1
#java.util.logging.FileHandler.formatter = java.util.logging.XMLFormatter
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter

当我调试测试类时,我可以在logger.manager.props 中看到这些属性被拾取。到目前为止,一切顺利。

那么为什么C:/temp/test/MyLogFile2.log 中没有创建日志文件?

不确定是否应该在 Eclipse 配置 VM 参数中添加:

-Djava.util.logging.config.file="C:/Program Files/Java/jre1.8.0_152/lib/logging.properties"

但如果我这样做了,那并没有什么不同。

有什么建议吗?

【问题讨论】:

    标签: java java.util.logging


    【解决方案1】:

    从您的 logging.properties 中,您没有显示将处理程序附加到记录器的部分。这在文件中解释为 cmets

    # "handlers" specifies a comma separated list of log Handler 
    # classes.  These handlers will be installed during VM startup.
    # Note that these classes must be on the system classpath.
    # By default we only configure a ConsoleHandler, which will only
    # show messages at the INFO and above levels.
    handlers= java.util.logging.ConsoleHandler
    
    # To also add the FileHandler, use the following line instead.
    #handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
    

    Use the logger debugging code 查看处理程序是否附加到根记录器。

    将以下行添加到您的属性文件中:

    handlers= java.util.logging.FileHandler, java.util.logging.ConsoleHandler
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-13
      • 2010-10-31
      • 2011-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多