使用log4j生成多个日志文件

时间:2015-02-25 09:18:31

标签: java log4j java.util.logging

如何使用log 4j为单个应用程序生成多个日志文件。 在这里,我想生成2个日志文件。所以你可以为这个添加一些示例。我尝试了这个并且它生成第二个日志文件,但无法打开该文件。可以请你建议吗?

log.dir=C:/Migration/logs/Export&ImportLogs_${current.date}.csv
rrd.dir=${log.dir}/rrd
log4j.rootLogger = INFO, FILE
log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.FILE.File=${log.dir}
log4j.appender.FILE.ImmediateFlush=true
log4j.appender.FILE.Threshold=info
log4j.appender.FILE.Append=true
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n
log4j.appender.FILE.MaxFileSize=10MB
log4j.appender.FILE.MaxBackupIndex=2

2 个答案:

答案 0 :(得分:1)

在java中配置两个记录器

static final Logger log1= Logger.getLogger("log1");
static final Logger log2= Logger.getLogger("log2");

在log4j.properties中,添加以下内容:

log4j.category.log1=INFO, logger1
log4j.additivity.log1=false

log4j.category.log2=DEBUG, logger2
log4j.additivity.log2=false

log4j.appender.logger1=org.apache.log4j.FileAppender
log4j.appender.logger1.File=log1.log
log4j.appender.logger1.layout=org.apache.log4j.PatternLayout
log4j.appender.logger1.layout.ConversionPattern=%d [%24F:%t:%L] - %m%n

log4j.appender.logger2=org.apache.log4j.FileAppender
log4j.appender.logger2.File=log2.log
log4j.appender.logger2.layout=org.apache.log4j.PatternLayout
log4j.appender.logger2.layout.ConversionPattern=%d [%24F:%t:%L] - %m%n

答案 1 :(得分:0)

log4j.category属性可用于从特定包中的代码登录到不同的日志文件。

log4j.category.com.abc.def = INFO , file2
  
log4j.rootLogger=WARN, file

log4j.appender.file=org.apache.log4j.DailyRollingFileAppender

log4j.appender.file.File=a.log
 
log4j.appender.file.encoding=UTF-8
 
log4j.appender.file.layout=org.apache.log4j.PatternLayout
   
log4j.appender.file.DatePattern='.'yyyy-MM-dd

log4j.appender.file2=org.apache.log4j.DailyRollingFileAppender

log4j.appender.file2.File=b.log
    
log4j.appender.file2.encoding=UTF-8
    
log4j.appender.file2.layout=org.apache.log4j.PatternLayout
 
log4j.appender.file2.DatePattern='.'yyyy-MM-dd