要配置log4j按日期生成日志文件,可以使用log4j的DailyRollingFileAppender。
首先,在log4j的配置文件(通常是log4j.properties或log4j.xml)中添加以下內容:
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.file.File=logFile.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.rootLogger=INFO, file
上述配置中,log4j.appender.file
指定了使用DailyRollingFileAppender來生成日志文件,log4j.appender.file.DatePattern
指定了日期格式,log4j.appender.file.File
指定了日志文件的路徑和名稱。
可以根據需要調整log4j.appender.file.layout.ConversionPattern
來自定義日志的格式。
接下來,在代碼中使用log4j的Logger來記錄日志:
import org.apache.log4j.Logger;
public class MyClass {
private static final Logger logger = Logger.getLogger(MyClass.class);
public static void main(String[] args) {
logger.info("This is a log message");
}
}
這樣,在每天的午夜時分,log4j就會自動創建一個新的日志文件,文件名會包含當前日期。例如,如果今天是2022年1月1日,那么生成的日志文件名將為logFile.log.2022-01-01。