Green
Green

Reputation: 713

log4j: Unable to create log files on minute basis

I am using below log4j.properties. I want to create file minute basis. I checked many post on this same question and tried but it didnt worked for me. I am using log4j first time, Please suggest if I am doing something wrong in properties file.

log4j.rootLogger=debug, stdout, R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d  %-5p  [%c{1}] %m %n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=/opt/aTest/log.out
log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern="%d  %-5p  [%c{1}] %m %n


log4j.appender.DailyRoller=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DailyRoller.datePattern='.'yyyy-MM-dd-HH-mm
log4j.appender.DailyRoller.file=/opt/aTest/log.out
log4j.appender.DailyRoller.layout=org.apache.log4j.PatternLayout
log4j.appender.DailyRoller.layout.ConversionPattern=%d{yyyy-MMM-dd HH:mm:ss,SSS} [%t] %c %x%n  %-5p %m%n

log4j.appender.LOGFILE=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.LOGFILE.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.LOGFILE.RollingPolicy.FileNamePattern=/opt/aTest/log_%d{yyyy-MM-dd-HH}.out

I am getting only one log.out file created and for each run log gets appended in same file.

Upvotes: 1

Views: 761

Answers (1)

Aaron Digulla
Aaron Digulla

Reputation: 328744

You should try the XML format for configuration; the properties files are hard to understand, easy to get wrong (as you can tell :-)

The problem here is that it's not enough to define an appender, you also have to tell log4j to use it:

log4j.rootLogger=debug, stdout, DailyRoller

Also DailyRoller is a confusing name for a per-minute rolling appender.

Upvotes: 1

Related Questions