private RollingFileAppender<ILoggingEvent> rollingAppender(String file) { RollingFileAppender<ILoggingEvent> rollingFileAppender = new RollingFileAppender<>(); rollingFileAppender.setEncoder(LogHelper.encoder("%date{ISO8601} - %msg%n")); rollingFileAppender.setContext(LogHelper.LOGGER_CONTEXT); rollingFileAppender.setFile(getEffectiveLogDirectory(file)); rollingFileAppender.setName(UUID.randomUUID().toString()); LogHelper.rollingPolicyForAppender( rollingFileAppender, "5 MB", "20 MB", 4 ); rollingFileAppender.start(); return rollingFileAppender; }
private FileAppender<ILoggingEvent> getAppender(String pluginId) { File pluginLogFileLocation = pluginLogFile(pluginId); RollingFileAppender<ILoggingEvent> rollingFileAppender = new RollingFileAppender<>(); rollingFileAppender.setEncoder(LogHelper.encoder()); rollingFileAppender.setContext(LogHelper.LOGGER_CONTEXT); rollingFileAppender.setFile(pluginLogFileLocation.getPath()); rollingFileAppender.setName(rollingFileAppenderName(pluginId)); LogHelper.rollingPolicyForAppender( rollingFileAppender, "5 MB", "20 MB", 7 ); rollingFileAppender.start(); return rollingFileAppender; }
fileAppender.setEncoder(encoder); fileAppender.start();
fileAppender.setEncoder(encoder); fileAppender.start();
rfAppender.setRollingPolicy(rollingPolicy); rfAppender.setTriggeringPolicy(triggeringPolicy); rfAppender.start();
protected ch.qos.logback.core.Appender getLogbackDailyRollingFileAppender(String productName, String file, String encoding) { RollingFileAppender appender = new RollingFileAppender(); appender.setContext(LogbackLoggerContextUtil.getLoggerContext()); appender.setName(productName + "." + file.replace(File.separatorChar, '.') + ".Appender"); appender.setAppend(true); appender.setFile(LoggerHelper.getLogFile(productName, file)); TimeBasedRollingPolicy rolling = new TimeBasedRollingPolicy(); rolling.setParent(appender); rolling.setFileNamePattern(LoggerHelper.getLogFile(productName, file) + ".%d{yyyy-MM-dd}"); rolling.setContext(LogbackLoggerContextUtil.getLoggerContext()); rolling.start(); appender.setRollingPolicy(rolling); PatternLayoutEncoder layout = new PatternLayoutEncoder(); layout.setPattern(LoggerHelper.getPattern(productName)); layout.setCharset(Charset.forName(encoding)); appender.setEncoder(layout); layout.setContext(LogbackLoggerContextUtil.getLoggerContext()); layout.start(); // 启动 appender.start(); return appender; }
protected Appender buildAppender(String loggerName, String fileStr) { final RollingFileAppender appender = new RollingFileAppender(); appender.setName(loggerName + "RollingFile"); appender.setContext(loggerContext); appender.setImmediateFlush(true); appender.setBufferSize(new FileSize(LOG_IO_BUFFER_SIZE_BYTES)); appender.setFile(fileStr); appender.setEncoder(buildEncoder()); TriggeringPolicy triggeringPolicy = buildTriggeringPolicy(); if (triggeringPolicy != null) { appender.setTriggeringPolicy(triggeringPolicy); } appender.setRollingPolicy(buildRollingPolicy(appender, fileStr)); appender.start(); return appender; }
protected ch.qos.logback.core.Appender getLogbackDailyRollingFileAppender(String productName, String file, String encoding) { RollingFileAppender appender = new RollingFileAppender(); appender.setContext(LogbackLoggerContextUtil.getLoggerContext()); appender.setName(productName + "." + file.replace(File.separatorChar, '.') + ".Appender"); appender.setAppend(true); appender.setFile(LoggerHelper.getLogFile(productName, file)); TimeBasedRollingPolicy rolling = new TimeBasedRollingPolicy(); rolling.setParent(appender); rolling.setFileNamePattern(LoggerHelper.getLogFile(productName, file) + ".%d{yyyy-MM-dd}"); rolling.setContext(LogbackLoggerContextUtil.getLoggerContext()); rolling.start(); appender.setRollingPolicy(rolling); PatternLayout layout = new PatternLayout(); layout.setPattern(LoggerHelper.getPattern(productName)); layout.setContext(LogbackLoggerContextUtil.getLoggerContext()); layout.start(); appender.setLayout(layout); // 启动 appender.start(); return appender; }
rfAppender.setTriggeringPolicy(triggeringPolicy); rfAppender.start();
appender.start();
appender.start();
appender.start();
appender.start(); return appender;
@Override protected void subAppend(E event) { if (!fileCreated) { super.start(); fileCreated = true; } super.subAppend(event); } }
@Override public void afterPropertiesSet() { patternLayoutEncoder.start(); fixedWindowRollingPolicy.start(); sizeBasedTriggeringPolicy.start(); rollingFileAppender.start(); }
@Test public void collisionWith_2RFA() { String suffix = "collisionWith_2RFA"; RollingFileAppender<String> rollingfileAppender1 = buildRollingFileAppender("RFA1", suffix, "bla-%d.log"); rollingfileAppender1.start(); RollingFileAppender<String> rollingfileAppender2 = buildRollingFileAppender("RFA1", suffix, "bla-%d.log"); rollingfileAppender2.start(); StatusPrinter.print(context); statusChecker.assertContainsMatch(Status.ERROR, "'FileNamePattern' option has the same value"); }
@Override protected Appender<Object> getConfiguredAppender() { rfa.setContext(context); tbrp .setFileNamePattern(CoreTestConstants.OUTPUT_DIR_PREFIX + "toto-%d.log"); tbrp.start(); rfa.setRollingPolicy(tbrp); rfa.start(); return rfa; }
@Test public void testFileNameWithParenthesis() { // if ')' is not escaped, the test throws // java.lang.IllegalStateException: FileNamePattern [.../program(x86)/toto-%d.log] does not contain a valid DateToken rfa.setContext(context); tbrp .setFileNamePattern(randomOutputDir + "program(x86)/toto-%d.log"); tbrp.start(); rfa.setRollingPolicy(tbrp); rfa.start(); rfa.doAppend("hello"); }
void initTRBP(RollingFileAppender<Object> rfa, TimeBasedRollingPolicy<Object> tbrp, String filenamePattern, long givenTime) { tbrp.setContext(context); tbrp.setFileNamePattern(filenamePattern); tbrp.setParent(rfa); tbrp.timeBasedFileNamingAndTriggeringPolicy = new DefaultTimeBasedFileNamingAndTriggeringPolicy<Object>(); tbrp.timeBasedFileNamingAndTriggeringPolicy.setCurrentTime(givenTime); rfa.setRollingPolicy(tbrp); tbrp.start(); rfa.start(); }
private void initTRBP(RollingFileAppender<Object> rfa, TimeBasedRollingPolicy<Object> tbrp, String filenamePattern, long givenTime) { tbrp.setContext(context); tbrp.setFileNamePattern(filenamePattern); tbrp.setParent(rfa); tbrp.timeBasedFileNamingAndTriggeringPolicy = new DefaultTimeBasedFileNamingAndTriggeringPolicy<Object>(); tbrp.timeBasedFileNamingAndTriggeringPolicy.setCurrentTime(givenTime); rfa.setRollingPolicy(tbrp); tbrp.start(); rfa.start(); }