Java如何创建滚动日志文件?

在此示例中,我们创建滚动文件或日志文件序列。我们不仅可以限制文件大小(请参阅如何限制日志文件的大小),还可以使日志文件滚动。如果我们使用单个日志文件,这将防止丢失重要的日志消息。

当使用多个文件时,日志文件名中将包含一个从0到的序列号N-1。如果将计数设置为5,则将有日志文件,例如myapp.log.0,myapp.log.1最大为myapp.log.5。

如果第一个日志文件(myapp.log.0)即将满,则myapp.log.1在将日志写入第一个日志文件之前,它将重命名为()。日志始终写入第一个文件(myapp.log.0)。

要按顺序读取日志消息,您需要从最高到最低的序列号开始。

package org.nhooo.example.logging;

import java.util.logging.Logger;

import java.util.logging.FileHandler;

import java.util.logging.SimpleFormatter;

import java.io.IOException;

public class RollingLogFile {

    // 设置较小的日志文件大小以演示滚动日志文件。

    public static final int FILE_SIZE = 1024;

    public static void main(String[] args) {

        Logger logger = Logger.getLogger(RollingLogFile.class.getName());

        try {

            // 创建具有5个日志文件的FileHandler实例

            // 序列。

            FileHandler handler = new FileHandler("myapp.log", FILE_SIZE, 5, true);

            handler.setFormatter(new SimpleFormatter());

            logger.addHandler(handler);

            logger.setUseParentHandlers(false);

        } catch (IOException e) {

            logger.warning("Failed to initialize logger handler.");

        }

        logger.info("Logging information message.");

        logger.warning("Logging warning message.");

    }

}

通过多次运行该程序,您将看到一个一个地创建日志文件。

以上是 Java如何创建滚动日志文件? 的全部内容, 来源链接: utcz.com/z/348731.html

回到顶部