java - Log4j 文件大小

标签 java log4j

我正在使用 log4j 来记录我的 Java 项目。我正在创建三种类型的日志文件,称为“信息”、“调试”和“错误”。我已经设置了每个文件的最大大小选项。但他们并没有像我们设定的那样限制大小。

调试文件的代码是-

public class DebugAppender extends RollingFileAppender {

    /** Creates a new instance of DebugAppender */
    public DebugAppender(String debuglogname, String path, String logfilesize) {
        String Filename = null;
        if (path == null || path.equalsIgnoreCase("")) {
            Filename = "Logs" + File.separator + debuglogname + ".log";
        } else {
            Filename = path + File.separator + "Logs" + File.separator + debuglogname + ".log";
        }
        super.setFile(Filename);
        setMaxFileSize(logfilesize);
        setMaxBackupIndex(2);
        setAppend(true);
        setLayout(new PatternLayout("%d{DATE}  %-5p %c{1} : %m%n"));
        activateOptions();
    }

    public String getFName() {
        return super.getFile();
    }
}

调试记录器的调用是 -

Logger debugLogger = Logger.getLogger(LogHandler.class.getName() + "Debug");
DebugAppender objDebugAppender = new DebugAppender(debugFileName, sTempPath, "1MB");
debugLogger.addAppender(objDebugAppender);

我们将其大小设置为“1MB”,但所有三个文件都不限制为 1 MB,它们会超过 GB。我怎样才能限制它们的大小。如果需要设置任何设置,请告诉我。

谢谢

最佳答案

您必须通过log4j属性文件设置日志文件的文件大小

log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1

关于java - Log4j 文件大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15942978/

相关文章:

java - java中arraylist的for循环中的"if"或"where"?

java - 是否可以在移动仿真中使用 Edge?

java - JOOQ PostgreSQL 连接导致 InvalidResultException

java - 第一个使用 REST 的 Java EE 项目

grails - 从 src/groovy 文件使用 log4j

java - log4j xml 配置文件位于类路径之外

java - 如何屏蔽 log4j2 日志消息

java - Log4j2:切换到路由后自定义插件不起作用

java - 如何在java中打开所有以特定前缀开头的文件?

hadoop - hadoop的日志记录框架