I want to write only INFO logs to the logfile, below is my log4j configuration
log4j.properties file is :
log4j.rootLogger = INFO, FILE,
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=logs.out
log4j.appender.FILE.ImmediateFlush=true
log4j.appender.FILE.Threshold=INFO
log4j.appender.FILE.Append=true
log4j.appender.FILE.MaxFileSize=100KB
log4j.appender.FILE.MaxBackupIndex=2
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss} %5p - %m%n
Java file is:
import org.apache.log4j.Logger;
public class Log4jDemo {
private static Logger log=Logger.getLogger(Logger.class.getName());
public static void main(String[] args) {
log.info("info");
log.error("error");
log.fatal("fatal");
log.warn("warn");
}
}
logs.out file is:
12 Apr 2016 15:38:35 INFO - info
12 Apr 2016 15:38:35 ERROR - error
12 Apr 2016 15:38:35 FATAL - fatal
12 Apr 2016 15:38:35 WARN - warn
Here I am getting logs in logs.out file are INFO, ERROR, FATAL, WARN but I want to write only INFO logs to logs.out file?
Anyone please suggest, how to achieve this objective?
my question is unique, it's not about log4j logging hierarchy order log4j logging hierarchy order
this shows the default configuration of log4j framework, but I want to implement the custom one, can you please help me out to resolve the issue.