[logback-user] Rolling Appender Question

Jeremy Kane jkane001 at gmail.com
Sat Apr 5 00:26:26 CEST 2014


I have the following configuration in code (see below), and it is logging
as expected, but it never rolls over to a new file, the one file just keeps
growing.  Can someone please help me out with what's wrong with my config?

Alternately (or maybe even "preferably"), I'd like to roll over after the
file reaches a certain size, and not worry about the date rollover at all,
but I haven't had any luck with that either.  If someone could help me out
with that too (or instead), I'd greatly appreciate it!

Thanks!
Jeremy Kane

My config code:

LoggerContext loggerContext = (LoggerContext)
LoggerFactory.getILoggerFactory();
loggerContext.reset();

// Rolling Log Appender
String fileDirectory = Constants.getFileDirectory(context);

RollingFileAppender<ILoggingEvent> rollingFileAppender = new
RollingFileAppender<ILoggingEvent>();
rollingFileAppender.setContext(loggerContext);
rollingFileAppender.setAppend(true);
rollingFileAppender.setFile(fileDirectory + "/log.txt");

TimeBasedRollingPolicy<ILoggingEvent> rollingPolicy = new
TimeBasedRollingPolicy<ILoggingEvent>();
rollingPolicy.setMaxHistory(2);
rollingPolicy.setFileNamePattern(fileDirectory + "/log.%d.txt");
rollingPolicy.setParent(rollingFileAppender);
rollingPolicy.setContext(loggerContext);

rollingPolicy.start();

rollingFileAppender.setRollingPolicy(rollingPolicy);

PatternLayoutEncoder fileEncoder = new PatternLayoutEncoder();
fileEncoder.setContext(loggerContext);
fileEncoder.setPattern("%d{h:mm:ss} %level - %msg%n");
fileEncoder.start();

rollingFileAppender.setEncoder(fileEncoder);
rollingFileAppender.start();

// LogCat Appender
PatternLayoutEncoder logcatEncoder = new PatternLayoutEncoder();
logcatEncoder.setContext(loggerContext);
logcatEncoder.setPattern("%msg%n");
logcatEncoder.start();

PatternLayoutEncoder tagEncode = new PatternLayoutEncoder();
tagEncode.setContext(loggerContext);
tagEncode.setPattern(tag);
tagEncode.start();

LogcatAppender logcatAppender = new LogcatAppender();
logcatAppender.setContext(loggerContext);
logcatAppender.setEncoder(logcatEncoder);
logcatAppender.setTagEncoder(tagEncode);
logcatAppender.start();

// add the newly created appenders to the root logger;
// qualify Logger to disambiguate from org.slf4j.Logger
ch.qos.logback.classic.Logger root = (ch.qos.logback.classic.Logger)
LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);

root.setLevel(level);
root.addAppender(rollingFileAppender);
root.addAppender(logcatAppender);

// print any status messages (warnings, etc) encountered in logback config
StatusPrinter.print(loggerContext);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.qos.ch/pipermail/logback-user/attachments/20140404/f8590091/attachment.html>


More information about the Logback-user mailing list