如何在日志文件中打印 log.info 消息

how to print log.info message in log file

我需要知道如何打印 log.info 消息。我对使用记录器一无所知。但是我使用 netbeans 尝试了这段代码,但没有用。这是代码:

public class login {
    Logger log = Logger.getLogger("myFirstLog");

    public static void main(String arg[]) {
        initLogger();
        LoginUser();
    }

    public static void LoginUser() {              
        log.info("user logged in");
    }

    public static void initLogger() {
        try {
            String filePath = "E:/myFirstLog.log";
            PatternLayout layout = new PatternLayout("%-5p %-10d %m %n");

            RollingFileAppender appender = new RollingFileAppender(layout, filePath);
            appender.setName("myFirstLog");
            appender.setMaxFileSize("1MB");
            appender.activateOptions();

            Logger.getRootLogger().addAppender(appender);

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

创建了一个没有日志的日志文件 information.How 以修复此代码以获取日志文件中的信息消息?

我认为默认的日志记录级别是 Level.ERROR,这意味着只有调用 log.error()(而不是其他)才会记录日志信息。您需要配置您实际想要的日志级别,例如通过添加:

appender.setThreshold(Level.INFO);

这意味着您的记录器将输出 INFO 优先级及以上的每条消息。当然你可以放一个较低的级别,比如 Level.DEBUG.

编辑

另一方面,您的日志不是静态的,而是从静态方法中使用的,因此您需要更改它。