Java 类ch.qos.logback.core.encoder.Encoder 实例源码

项目:baleen    文件:BaleenLoggerBuilderTest.java   
/**
 * Test abstract functions (using console implementation) and the functions
 * of console
 *
 */
@Test
public void testAbstractAndConsole() {
    BaleenConsoleLoggerBuilder builder = new BaleenConsoleLoggerBuilder(NAME, BaleenLogging.DEFAULT_PATTERN,
            new MinMaxFilter(Level.INFO, Level.WARN));

    LoggerContext context = new LoggerContext();
    Encoder<ILoggingEvent> encoder = new PatternLayoutEncoder();

    Appender<ILoggingEvent> appender = builder.build(context, encoder);

    assertEquals(NAME, builder.getName());

    assertTrue(appender instanceof ConsoleAppender);
    assertEquals(encoder, ((ConsoleAppender<ILoggingEvent>) appender).getEncoder());

    assertNotNull(appender);
    assertEquals(NAME, appender.getName());
    Filter<ILoggingEvent> filter = appender.getCopyOfAttachedFiltersList().get(0);
    assertTrue(filter instanceof MinMaxFilter);
    assertEquals(Level.INFO, ((MinMaxFilter) filter).getMin());
    assertEquals(Level.WARN, ((MinMaxFilter) filter).getMax());
}
项目:bootique-logback    文件:FileAppenderFactory.java   
protected FileAppender<ILoggingEvent> createRollingFileAppender(Encoder<ILoggingEvent> encoder,
                                                                LoggerContext context,
                                                                RollingPolicyFactory rollingPolicy) {

    RollingFileAppender<ILoggingEvent> appender = new RollingFileAppender<>();
    appender.setFile(file);
    appender.setContext(context);
    appender.setEncoder(encoder);
    // Setup rolling policy
    RollingPolicy policy = rollingPolicy.createRollingPolicy(context);
    appender.setRollingPolicy(policy);
    policy.setParent(appender);
    // Setup triggering policy
    TriggeringPolicy<ILoggingEvent> triggeringPolicy = rollingPolicy.createTriggeringPolicy(context);
    if (triggeringPolicy != null) {
        appender.setTriggeringPolicy(triggeringPolicy);
        triggeringPolicy.start();
    }
    policy.start();
    appender.start();

    return appender;
}
项目:crawljax    文件:LogUtil.java   
/**
 * Configure file logging and stop console logging.
 * 
 * @param filename
 *            Log to this file.
 */
@SuppressWarnings("unchecked")
static void logToFile(String filename) {
    Logger rootLogger = (Logger) LoggerFactory.getLogger(org.slf4j.Logger.ROOT_LOGGER_NAME);

    FileAppender<ILoggingEvent> fileappender = new FileAppender<>();
    fileappender.setContext(rootLogger.getLoggerContext());
    fileappender.setFile(filename);
    fileappender.setName("FILE");

    ConsoleAppender<?> console = (ConsoleAppender<?>) rootLogger.getAppender("STDOUT");
    fileappender.setEncoder((Encoder<ILoggingEvent>) console.getEncoder());

    fileappender.start();

    rootLogger.addAppender(fileappender);

    console.stop();
}
项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:LogbackConfigurationTests.java   
@Test
public void consolePatternCanBeOverridden() throws JoranException {
    JoranConfigurator configurator = new JoranConfigurator();
    LoggerContext context = new LoggerContext();
    configurator.setContext(context);
    configurator.doConfigure(
            new File("src/test/resources/custom-console-log-pattern.xml"));
    Appender<ILoggingEvent> appender = context.getLogger("ROOT")
            .getAppender("CONSOLE");
    assertThat(appender).isInstanceOf(ConsoleAppender.class);
    Encoder<?> encoder = ((ConsoleAppender<?>) appender).getEncoder();
    assertThat(encoder).isInstanceOf(PatternLayoutEncoder.class);
    assertThat(((PatternLayoutEncoder) encoder).getPattern()).isEqualTo("foo");
}
项目:gadgetbridge_artikcloud    文件:Logging.java   
public boolean setImmediateFlush(boolean enable) {
    FileAppender<ILoggingEvent> fileLogger = getFileLogger();
    Encoder<ILoggingEvent> encoder = fileLogger.getEncoder();
    if (encoder instanceof LayoutWrappingEncoder) {
        ((LayoutWrappingEncoder) encoder).setImmediateFlush(enable);
        return true;
    }
    return false;
}
项目:gadgetbridge_artikcloud    文件:Logging.java   
public boolean isImmediateFlush() {
    FileAppender<ILoggingEvent> fileLogger = getFileLogger();
    Encoder<ILoggingEvent> encoder = fileLogger.getEncoder();
    if (encoder instanceof LayoutWrappingEncoder) {
        return ((LayoutWrappingEncoder) encoder).isImmediateFlush();
    }
    return false;
}
项目:spring-boot-concourse    文件:LogbackConfigurationTests.java   
@Test
public void consolePatternCanBeOverridden() throws JoranException {
    JoranConfigurator configurator = new JoranConfigurator();
    LoggerContext context = new LoggerContext();
    configurator.setContext(context);
    configurator.doConfigure(
            new File("src/test/resources/custom-console-log-pattern.xml"));
    Appender<ILoggingEvent> appender = context.getLogger("ROOT")
            .getAppender("CONSOLE");
    assertThat(appender).isInstanceOf(ConsoleAppender.class);
    Encoder<?> encoder = ((ConsoleAppender<?>) appender).getEncoder();
    assertThat(encoder).isInstanceOf(PatternLayoutEncoder.class);
    assertThat(((PatternLayoutEncoder) encoder).getPattern()).isEqualTo("foo");
}
项目:bartleby    文件:DummyAppenderTest.java   
@Test
public void testBasic() throws IOException {
  Encoder<Object> encoder = new DummyEncoder<Object>();
  encoder.init(baos);
  da.setEncoder(encoder);
  da.start();
  da.doAppend(new Object());
  assertEquals(DummyLayout.DUMMY, baos.toString());
}
项目:knowledgestore    文件:Logging.java   
public synchronized void setEncoder(final Encoder<E> encoder) {
    if (isStarted()) {
        addStatus(new ErrorStatus("Cannot configure appender named \"" + this.name
                + "\" after it has been started.", this));
    }
    this.encoder = encoder;
}
项目:baleen    文件:BaleenFileLoggerBuilder.java   
/**
 * Create an appender that will create a new log each day
 * 
 * @param context
 * @param encoder
 * @return An appender that matches the set up of the logger builder
 */
private RollingFileAppender<ILoggingEvent> createDailyLogAppender(LoggerContext context, Encoder<ILoggingEvent> encoder){
    RollingFileAppender<ILoggingEvent> appender = new RollingFileAppender<>();
    appender.setEncoder(encoder);
    appender.setFile(file);

    TimeBasedRollingPolicy<ILoggingEvent> rolling = new TimeBasedRollingPolicy<>();
    rolling.setContext(context);
    rolling.setParent(appender);

    rolling.setFileNamePattern(getFileWithPattern("%d"));

    //Set the maximum number of logs, either to the user specified setting or default to 1
    if (maxNumberLogs.isPresent() && maxNumberLogs.get() >= 0) {
        rolling.setMaxHistory(maxNumberLogs.get());
    } else {
        rolling.setMaxHistory(1);
    }

    //Do we need to also split files by size? 
    if (divideBasedOnSize()) {
        SizeAndTimeBasedFNATP<ILoggingEvent> sizeBased = new SizeAndTimeBasedFNATP<>();
        sizeBased.setContext(context);
        sizeBased.setMaxFileSize(getMaxFileSize());
        sizeBased.setTimeBasedRollingPolicy(rolling);

        rolling.setTimeBasedFileNamingAndTriggeringPolicy(sizeBased);
    }

    rolling.start();
    if(rolling.getTimeBasedFileNamingAndTriggeringPolicy() != null){
        rolling.getTimeBasedFileNamingAndTriggeringPolicy().start();
    }
    appender.setRollingPolicy(rolling);

    return appender;
}
项目:baleen    文件:BaleenFileLoggerBuilder.java   
/**
 * Create an appender that will roll over based on size
 * 
 * @param context
 * @param encoder
 * @return An appender that matches the set up of the logger builder
 */
private RollingFileAppender<ILoggingEvent> createLogAppender(LoggerContext context, Encoder<ILoggingEvent> encoder){
    RollingFileAppender<ILoggingEvent> appender = new RollingFileAppender<>();
    appender.setEncoder(encoder);
    appender.setFile(file);

    FixedWindowRollingPolicy rolling = new FixedWindowRollingPolicy();
    rolling.setParent(appender);
    rolling.setContext(context);

    //Set the maximum number of logs, either to the user specified setting or default to 1
    rolling.setMinIndex(1);
    if (maxNumberLogs.isPresent() && maxNumberLogs.get() >= 0) {
        rolling.setMaxIndex(maxNumberLogs.get());
    } else {
        rolling.setMaxIndex(1);
    }
    rolling.setFileNamePattern(getFileWithPattern("%i"));

    //Configure size based rolling
    SizeBasedTriggeringPolicy<ILoggingEvent> trigger = new SizeBasedTriggeringPolicy<>();
    trigger.setMaxFileSize(getMaxFileSize());
    trigger.setContext(context);

    rolling.start();
    trigger.start();
    appender.setRollingPolicy(rolling);
    appender.setTriggeringPolicy(trigger);

    return appender;
}
项目:baleen    文件:AbstractBaleenLoggerBuilder.java   
/**
 * Build a new appender for the specified context and encoder (where required).
 * 
 * @param context The logger context
 * @param encoder The encoder to use (if that is possible for the specific appender)
 * @return The new appender
 */
@Override
public final Appender<ILoggingEvent> build(LoggerContext context, Encoder<ILoggingEvent> encoder) {
    Appender<ILoggingEvent> appender = createAppender(context, encoder);
    appender.setName(name);
    appender.setContext(context);

    if (filters != null) {
        filters.forEach(f -> appender.addFilter(f));
    }

    return appender;
}
项目:baleen    文件:BaleenLoggingTest.java   
@Test
public void test() {
    BaleenLogging logging = new BaleenLogging();
    InMemoryLoggingBuilder builder = new InMemoryLoggingBuilder();
    logging.configure(Arrays.asList(builder, new BaleenConsoleLoggerBuilder(PATTERN, new MinMaxFilter(Level.INFO,
            Level.ERROR))));

    LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory();
    Logger rootLogger = context.getLogger(ch.qos.logback.classic.Logger.ROOT_LOGGER_NAME);

    int count = 0;

    Iterator<Appender<ILoggingEvent>> it = rootLogger.iteratorForAppenders();
    while (it.hasNext()) {
        Appender<ILoggingEvent> appender = it.next();

        if (appender instanceof OutputStreamAppender) {
            Encoder<ILoggingEvent> e = ((OutputStreamAppender<ILoggingEvent>) appender).getEncoder();
            assertTrue(e instanceof PatternLayoutEncoder);

            assertEquals(PATTERN, ((PatternLayoutEncoder) e).getPattern());
        }

        count++;
    }

    // 3 = 2 + instrumented appender
    assertEquals(3, count);

}
项目:baleen    文件:BaleenLoggerBuilderTest.java   
@Test
public void testAbstractAndConsoleMultipleFilters() {
    BaleenConsoleLoggerBuilder builder = new BaleenConsoleLoggerBuilder(NAME, BaleenLogging.DEFAULT_PATTERN,
            Arrays.asList(new MinMaxFilter(Level.INFO, Level.ERROR), new MinMaxFilter(Level.INFO, Level.WARN)));

    LoggerContext context = new LoggerContext();
    Encoder<ILoggingEvent> encoder = new PatternLayoutEncoder();

    Appender<ILoggingEvent> appender = builder.build(context, encoder);

    assertEquals(NAME, builder.getName());

    assertTrue(appender instanceof ConsoleAppender);
    assertEquals(encoder, ((ConsoleAppender<ILoggingEvent>) appender).getEncoder());

    assertNotNull(appender);
    assertEquals(NAME, appender.getName());
    assertEquals(2, appender.getCopyOfAttachedFiltersList().size());
    Filter<ILoggingEvent> filter = appender.getCopyOfAttachedFiltersList().get(0);
    assertTrue(filter instanceof MinMaxFilter);
    assertEquals(Level.INFO, ((MinMaxFilter) filter).getMin());
    assertEquals(Level.ERROR, ((MinMaxFilter) filter).getMax());

    filter = appender.getCopyOfAttachedFiltersList().get(1);
    assertTrue(filter instanceof MinMaxFilter);
    assertEquals(Level.INFO, ((MinMaxFilter) filter).getMin());
    assertEquals(Level.WARN, ((MinMaxFilter) filter).getMax());

    // TODO: Test that both filters are being applied
}
项目:baleen    文件:BaleenLoggerBuilderTest.java   
@Test
public void testFileWithDailyRolling() {
    BaleenFileLoggerBuilder builder = new BaleenFileLoggerBuilder(NAME, BaleenLogging.DEFAULT_PATTERN,
            LOG_FILENAME, new MinMaxFilter(Level.INFO, Level.WARN), true, Optional.of(5), Optional.of(10));

    LoggerContext context = new LoggerContext();
    Encoder<ILoggingEvent> encoder = new PatternLayoutEncoder();

    Appender<ILoggingEvent> appender = builder.build(context, encoder);

    assertTrue(appender instanceof FileAppender);
    assertEquals(encoder, ((FileAppender<ILoggingEvent>) appender).getEncoder());

    // TODO: Add tests on the (current private) methods
}
项目:baleen    文件:BaleenLoggerBuilderTest.java   
@Test
public void testFileWithDailyRollingWithoutSize() {
    BaleenFileLoggerBuilder builder = new BaleenFileLoggerBuilder(NAME, BaleenLogging.DEFAULT_PATTERN,
            LOG_FILENAME, new MinMaxFilter(Level.INFO, Level.WARN), true, Optional.empty(), Optional.of(10));

    LoggerContext context = new LoggerContext();
    Encoder<ILoggingEvent> encoder = new PatternLayoutEncoder();

    Appender<ILoggingEvent> appender = builder.build(context, encoder);

    assertTrue(appender instanceof FileAppender);
    assertEquals(encoder, ((FileAppender<ILoggingEvent>) appender).getEncoder());

    // TODO: Add tests on the (current private) methods
}
项目:baleen    文件:BaleenLoggerBuilderTest.java   
@Test
public void testFileWithoutDailyRolling() {
    BaleenFileLoggerBuilder builder = new BaleenFileLoggerBuilder(NAME, BaleenLogging.DEFAULT_PATTERN,
            LOG_FILENAME, new MinMaxFilter(Level.INFO, Level.WARN), false, Optional.of(5), Optional.of(10));

    LoggerContext context = new LoggerContext();
    Encoder<ILoggingEvent> encoder = new PatternLayoutEncoder();

    Appender<ILoggingEvent> appender = builder.build(context, encoder);

    assertTrue(appender instanceof FileAppender);
    assertEquals(encoder, ((FileAppender<ILoggingEvent>) appender).getEncoder());

    // TODO: Add tests on the (current private) methods
}
项目:psi-probe    文件:LogbackAppenderAccessor.java   
@Override
public String getEncoding() {
  if (getTarget() instanceof OutputStreamAppender) {
    OutputStreamAppender<?> appender = (OutputStreamAppender<?>) getTarget();
    Encoder<?> encoder = appender.getEncoder();
    if (encoder instanceof LayoutWrappingEncoder) {
      LayoutWrappingEncoder<?> base = (LayoutWrappingEncoder<?>) encoder;
      if (base.getCharset() != null) {
        return base.getCharset().name();
      }
      return null;
    }
  }
  return null;
}
项目:bootique-logback    文件:FileAppenderFactory.java   
protected FileAppender<ILoggingEvent> createSingleFileAppender(Encoder<ILoggingEvent> encoder,
                                                               LoggerContext context) {
    FileAppender<ILoggingEvent> appender = new FileAppender<>();
    appender.setFile(Objects.requireNonNull(file));

    appender.setContext(context);
    appender.setEncoder(encoder);
    appender.start();

    return appender;
}
项目:pikes    文件:Logging.java   
public synchronized void setEncoder(final Encoder<E> encoder) {
    if (isStarted()) {
        addStatus(new ErrorStatus("Cannot configure appender named \"" + this.name
                + "\" after it has been started.", this));
    }
    this.encoder = encoder;
}
项目:midpoint    文件:Log.java   
private ConsoleAppender setupAppender(String target, LoggerContext ctx, Encoder enc) {
    ConsoleAppender appender = new ConsoleAppender();
    appender.setTarget(target);
    appender.setContext(ctx);
    appender.setEncoder(enc);

    appender.start();

    return appender;
}
项目:jerry-core    文件:ApplicationLogger.java   
private static Encoder<ILoggingEvent> getPatternLayoutEncoder(String logPattern) {
       PatternLayoutEncoder patternLayoutEncoder = new PatternLayoutEncoder();
       patternLayoutEncoder.setPattern(logPattern);
       patternLayoutEncoder.setContext(loggerContext);
       patternLayoutEncoder.setOutputPatternAsHeader(true);
       patternLayoutEncoder.start();

       return patternLayoutEncoder;
}
项目:midpoint    文件:Log.java   
private ConsoleAppender setupAppender(String target, LoggerContext ctx, Encoder enc) {
    ConsoleAppender appender = new ConsoleAppender();
    appender.setTarget(target);
    appender.setContext(ctx);
    appender.setEncoder(enc);

    appender.start();

    return appender;
}
项目:maps4cim    文件:LoggerConfig.java   
/**
 * Creates a new Encoder for the specified pattern
 * @param pattern the pattern that shall be used by the encoder
 * @return a new Encoder using the specified pattern
 */
@SuppressWarnings("rawtypes")
public static Encoder getEncoder(String pattern) {
    PatternLayoutEncoder encoder = new PatternLayoutEncoder();
    encoder.setContext(lc);
    encoder.setPattern(pattern);
    encoder.start();
    return encoder;
}
项目:maps4cim    文件:LoggerConfig.java   
/**
 * Creates the file appender for the logger with a custom logging policy
 * (RollingFileAppender with max size of 1 MB and up to 3 backups)
 * @param logFile the file to log into
 * @return the FileAppender for the specified File and current logging
 *         context
 */
@SuppressWarnings({ "rawtypes", "unchecked" })
protected static FileAppender getFileAppender(File logFile) {
    // init rolling file appender
    RollingFileAppender rfAppender = new RollingFileAppender();
    rfAppender.setContext(lc);
    rfAppender.setFile(logFile.getAbsolutePath());
    rfAppender.setAppend(true);

    // rolling policy: keep up to 3 rollover-files with postfix .%i.log
    FixedWindowRollingPolicy rollingPolicy = new FixedWindowRollingPolicy();
    rollingPolicy.setContext(lc);
    rollingPolicy.setParent(rfAppender);
    rollingPolicy.setFileNamePattern(logFileName + ".%i.log");
    rollingPolicy.setMinIndex(1);
    rollingPolicy.setMaxIndex(3);
    rollingPolicy.start();

    // rollover after logfixe exceeds 1MB
    SizeBasedTriggeringPolicy triggeringPolicy = new SizeBasedTriggeringPolicy();
    triggeringPolicy.setMaxFileSize(FileSize.valueOf("1mb"));
    triggeringPolicy.start();

    // layout of the log entries
    Encoder encoder = getDefaultEncoder();

    // apply settings and start appender
    rfAppender.setEncoder(encoder);
    rfAppender.setRollingPolicy(rollingPolicy);
    rfAppender.setTriggeringPolicy(triggeringPolicy);
    rfAppender.start();

    return rfAppender;
}
项目:logback-http-appender    文件:HttpAppenderAbstract.java   
public Encoder<ILoggingEvent> getEncoder() {
    return encoder;
}
项目:logback-http-appender    文件:HttpAppenderAbstract.java   
public void setEncoder(Encoder<ILoggingEvent> encoder) {
    this.encoder = encoder;
}
项目:logback-redis    文件:RedisBatchAppender.java   
public Encoder<DeferredProcessingAware> getEncoder() {
    return encoder;
}
项目:logback-redis    文件:RedisBatchAppender.java   
public void setEncoder(Encoder<DeferredProcessingAware> encoder) {
    this.encoder = encoder;
}
项目:bartleby    文件:OutputStreamAppender.java   
public Encoder<E> getEncoder() {
  return encoder;
}
项目:bartleby    文件:OutputStreamAppender.java   
public void setEncoder(Encoder<E> encoder) {
  this.encoder = encoder;
}
项目:knowledgestore    文件:Logging.java   
public synchronized Encoder<E> getEncoder() {
    return this.encoder;
}
项目:baleen    文件:EvictingQueueBuilder.java   
@Override
protected Appender<ILoggingEvent> createAppender(LoggerContext context, Encoder<ILoggingEvent> encoder) {
    return appender;
}
项目:baleen    文件:InMemoryLoggingBuilder.java   
@Override
protected Appender<ILoggingEvent> createAppender(LoggerContext context, Encoder<ILoggingEvent> encoder) {
    appender = new InMemoryAppender<ILoggingEvent>();

    return appender;
}
项目:baleen    文件:BaleenLoggingTest.java   
@Test
public void config() throws Exception {
    YamlConfiguration configuration = YamlConfiguration.readFromResource(BaleenLoggingTest.class,
            "dummyConfig.yaml");

    BaleenLogging logging = new BaleenLogging();
    logging.configure(configuration);

    LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory();
    Logger rootLogger = context.getLogger(ch.qos.logback.classic.Logger.ROOT_LOGGER_NAME);

    int count = 0;

    Iterator<Appender<ILoggingEvent>> it = rootLogger.iteratorForAppenders();
    while (it.hasNext()) {
        Appender<ILoggingEvent> appender = it.next();

        switch (count) {
        case 0:
            assertTrue(appender instanceof ConsoleAppender);
            break;
        case 1:
            assertTrue(appender instanceof RollingFileAppender);
            break;
        case 2:
            assertTrue(appender instanceof FileAppender);
            assertFalse(appender instanceof RollingFileAppender);
            break;
        case 3:
            if (appender instanceof OutputStreamAppender) {
                Encoder<ILoggingEvent> e = ((OutputStreamAppender<ILoggingEvent>) appender).getEncoder();
                assertTrue(e instanceof PatternLayoutEncoder);
                assertEquals(PATTERN, ((PatternLayoutEncoder) e).getPattern());
            }
            break;
        case 4:
            if (appender instanceof EvictingQueueAppender) {
                assertEquals(EvictingQueueAppender.DEFAULT_MAX_SIZE, ((EvictingQueueAppender<ILoggingEvent>) appender).getMaxSize());
            } else {
                fail("Unknown additional appender");
            }
            break;
        case 5:
            // Allow additional appenders for checking, otherwise throw an error
            if (!(appender instanceof InstrumentedAppender)) {
                fail("Unknown additional appender");
            }
            break;
        default:
            fail("Too many appenders" + appender.getName());
        }
        count++;
    }

    assertEquals(6, count);

    // TODO: test the instance parameters match the configuration
}
项目:pikes    文件:Logging.java   
public synchronized Encoder<E> getEncoder() {
    return this.encoder;
}
项目:otj-logging    文件:KafkaAppender.java   
public Encoder<ILoggingEvent> getEncoder()
{
    return encoder;
}
项目:otj-logging    文件:KafkaAppender.java   
public void setEncoder(Encoder<ILoggingEvent> encoder)
{
    this.encoder = encoder;
}
项目:logback-journal    文件:SystemdJournalAppender.java   
public Encoder<ILoggingEvent> getEncoder() {
    return encoder;
}
项目:logback-journal    文件:SystemdJournalAppender.java   
public void setEncoder(Encoder<ILoggingEvent> encoder) {
    this.encoder = encoder;
}