我有批量java程序。它将每1小时运行一次。
我想知道以下情况的正确log4j appender是什么:
1)每次作业运行时创建一个新的日志文件。意味着日志仅包含该特定运行,并且不应包含旧运行数据。 2)维护当天的相同日志文件。如果是第二天,那么创建新文件
请帮助。
答案 0 :(得分:0)
RollingFileAppender允许您定义创建新日志的频率,如果添加append=false
参数,每次打开日志都会被截断,
log4j.appender.LOG=org.apache.log4j.RollingFileAppender
log4j.appender.LOG.File=/path/to/your/file
log4j.appender.LOG.layout=org.apache.log4j.PatternLayout
log4j.appender.LOG.MaxFileSize=10MB
log4j.appender.LOG.MaxBackupIndex=5
log4j.appender.LOG.append=false
您也可以尝试DailyRollingFileAppender,默认情况下每天都会滚动,如果这些都不符合您的需求,您可以通过扩展standard implementations之一来编写自己的Appender实现。