java.util.logging.Logger不会在Linux上的日志文件中写入

时间:2017-10-12 07:24:42

标签: java logging

我正在研究的是一个应该在Linux服务器(CentOS7)上运行的组件程序。我使用java.util.logging.Logger及其FileHandler来创建日志文件并附加日志。

它在eclipse上的Tomcat7本地服务器上运行良好。但它只会创建一个日志文件,并且在Linux服务器上运行时不会在其上写入任何日志。我还使组件的父目录具有所有权限。但它没有给出任何改变。

我感到困惑的是它肯定会创建一个日志文件。我的代码如下。

private final Logger logger = Logger.getAnonymousLogger();
private FileHandler fileHandler;

public String run(){

    try {
        fileHandler = new FileHandler("component.log", true);
        SimpleFormatter formatter = new SimpleFormatter();
        fileHandler.setFormatter(formatter);
        logger.addHandler(fileHandler);

    } catch (Exception e) {
        .....
    }

    logger.info("==== component start ====");

    .............
    .............

    fileHandler.close();

    return "....";
}

1 个答案:

答案 0 :(得分:0)

要进行测试,请将文件名更改为"component%u.log"。您可能尝试将多个文件处理程序打开到同一个文件,具体取决于此代码的运行方式。