@Test public void startup_logger_prints_to_only_to_system_out() { LoggerContext ctx = underTest.configure(props); Logger startup = ctx.getLogger("startup"); assertThat(startup.isAdditive()).isFalse(); Appender appender = startup.getAppender("CONSOLE"); assertThat(appender).isInstanceOf(ConsoleAppender.class); ConsoleAppender<ILoggingEvent> consoleAppender = (ConsoleAppender<ILoggingEvent>) appender; assertThat(consoleAppender.getTarget()).isEqualTo("System.out"); assertThat(consoleAppender.getEncoder()).isInstanceOf(PatternLayoutEncoder.class); PatternLayoutEncoder patternEncoder = (PatternLayoutEncoder) consoleAppender.getEncoder(); assertThat(patternEncoder.getPattern()).isEqualTo("%d{yyyy.MM.dd HH:mm:ss} %-5level app[][%logger{20}] %msg%n"); }
@Test public void startup_logger_prints_to_only_to_system_out() { LoggerContext ctx = underTest.configure(props); Logger startup = ctx.getLogger("startup"); assertThat(startup.isAdditive()).isFalse(); Appender appender = startup.getAppender("CONSOLE"); assertThat(appender).isInstanceOf(ConsoleAppender.class); ConsoleAppender<ILoggingEvent> consoleAppender = (ConsoleAppender<ILoggingEvent>) appender; assertThat(consoleAppender.getTarget()).isEqualTo("System.out"); assertThat(consoleAppender.getEncoder()).isInstanceOf(PatternLayoutEncoder.class); PatternLayoutEncoder patternEncoder = (PatternLayoutEncoder) consoleAppender.getEncoder(); assertThat(patternEncoder.getPattern()).isEqualTo("%d{yyyy.MM.dd HH:mm:ss} %-5level app[][%logger{20}] %msg%n"); }
private void verifyAppConsoleAppender(Appender<ILoggingEvent> appender) { assertThat(appender).isInstanceOf(ConsoleAppender.class); ConsoleAppender<ILoggingEvent> consoleAppender = (ConsoleAppender<ILoggingEvent>) appender; assertThat(consoleAppender.getTarget()).isEqualTo(ConsoleTarget.SystemOut.getName()); verifyAppFormattedLogEncoder(consoleAppender.getEncoder()); }
@Test public void newConsoleAppender() { LoggerContext ctx = underTest.getRootContext(); ConsoleAppender<?> appender = underTest.newConsoleAppender(ctx, "MY_APPENDER", "%msg%n"); assertThat(appender.getName()).isEqualTo("MY_APPENDER"); assertThat(appender.getContext()).isSameAs(ctx); assertThat(appender.isStarted()).isTrue(); assertThat(((PatternLayoutEncoder) appender.getEncoder()).getPattern()).isEqualTo("%msg%n"); assertThat(appender.getCopyOfAttachedFiltersList()).isEmpty(); }
private void verifyGobblerConsoleAppender(Logger logger) { Appender<ILoggingEvent> appender = logger.getAppender("GOBBLER_CONSOLE"); assertThat(appender).isInstanceOf(ConsoleAppender.class); ConsoleAppender<ILoggingEvent> consoleAppender = (ConsoleAppender<ILoggingEvent>) appender; assertThat(consoleAppender.getTarget()).isEqualTo(ConsoleTarget.SystemOut.getName()); verifyFormattedLogEncoder(consoleAppender.getEncoder(), "%msg%n"); }
@Test public void root_logger_only_writes_to_console_with_formatting_when_running_from_sonar_script() { emulateRunFromSonarScript(); LoggerContext ctx = underTest.configure(); Logger rootLogger = ctx.getLogger(ROOT_LOGGER_NAME); ConsoleAppender<ILoggingEvent> consoleAppender = (ConsoleAppender<ILoggingEvent>) rootLogger.getAppender("APP_CONSOLE"); verifyAppFormattedLogEncoder(consoleAppender.getEncoder()); assertThat(rootLogger.iteratorForAppenders()).hasSize(1); }
public String ac_log_get_pattern_$_2(Args args) { String loggerName = args.argv(0); String appenderName = args.argv(1); Logger logger = getLogger(loggerName); if (logger == null) { throw new IllegalArgumentException("Logger not found: " + loggerName); } Appender<ILoggingEvent> appender = logger.getAppender(appenderName); if (appender == null) { throw new IllegalArgumentException("Appender not found: " + appenderName); } Encoder<?> encoder; if (appender instanceof ConsoleAppender) { encoder = ((ConsoleAppender<?>)appender).getEncoder(); } else if (appender instanceof FileAppender) { encoder = ((FileAppender<?>)appender).getEncoder(); } else { throw new IllegalArgumentException("Appender " + appenderName + " does not support encoders."); } PatternLayoutEncoder patternLayoutEncoder; if (encoder instanceof PatternLayoutEncoder) { patternLayoutEncoder = (PatternLayoutEncoder)encoder; } else { throw new IllegalArgumentException("Appender " + appenderName + " does not provide a pattern encoder."); } return "pattern of appender " + appenderName + " is " + patternLayoutEncoder.getPattern(); }
@SuppressWarnings("deprecation") @Test public void encoderCharset() throws JoranException, IOException, InterruptedException { String configFileAsStr = ClassicTestConstants.JORAN_INPUT_PREFIX + "encoderCharset.xml"; configure(configFileAsStr); ConsoleAppender<ILoggingEvent> consoleAppender = (ConsoleAppender<ILoggingEvent>) root.getAppender("CONSOLE"); assertNotNull(consoleAppender); LayoutWrappingEncoder<ILoggingEvent> encoder = (LayoutWrappingEncoder<ILoggingEvent>) consoleAppender.getEncoder(); assertEquals("UTF-8", encoder.getCharset().displayName()); StatusChecker checker = new StatusChecker(loggerContext); checker.assertIsErrorFree(); }
consoleApp = (ch.qos.logback.core.ConsoleAppender<ILoggingEvent>) appender; consoleApp.getCopyOfAttachedFiltersList(); PatternLayoutEncoder encoder = (PatternLayoutEncoder) consoleApp.getEncoder(); app.setEncoderPattern(encoder.getPattern()); app.setName(consoleApp.getName());
@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 }
/** 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()); }