I have setup Logback file appender programmatically and set log level into ALL
.
The reason was to set log level ALL
i wanted to log file contains all log details like(INFO,DEBUG,WARN and etc...)
But i want to avoid those details from the console.If anyone knows please let me know how can i disable Logback output to console programmatically.
Logger code snippet
private static Logger createLoggerFor(String string, String file) {
LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
PatternLayoutEncoder ple = new PatternLayoutEncoder();
ple.setPattern("%date %level [%thread] %logger{10} [%file:%line] %msg%n");
ple.setContext(lc);
ple.start();
FileAppender<ILoggingEvent> fileAppender = new FileAppender<ILoggingEvent>();
fileAppender.setFile(file);
fileAppender.setEncoder(ple);
fileAppender.setContext(lc);
fileAppender.start();
Logger logger = (Logger) LoggerFactory.getLogger(string);
logger.addAppender(fileAppender);
logger.setLevel(Level.ALL);
logger.setAdditive(false); /* set to true if root should log too */
return logger;
}
Note:When i set log level WARN
or DEBUG
details doesnt show in the log file as well as console out put.But i want to log every details in to log file including INFO
.