package io.symphonia.lambda.logging; import ch.qos.logback.classic.Level; import ch.qos.logback.classic.Logger; import ch.qos.logback.classic.LoggerContext; import ch.qos.logback.classic.spi.Configurator; import ch.qos.logback.core.spi.ContextAwareBase; public class DefaultMetricsLogbackConfigurator extends ContextAwareBase implements Configurator { @Override public void configure(LoggerContext loggerContext) { addInfo("Setting up default configuration."); NonMetricsConsoleAppender nonMetricsConsoleAppender = new NonMetricsConsoleAppender(); nonMetricsConsoleAppender.setContext(loggerContext); nonMetricsConsoleAppender.setName("CONSOLE"); nonMetricsConsoleAppender.start(); MetricsConsoleAppender metricsConsoleAppender = new MetricsConsoleAppender(); metricsConsoleAppender.setContext(loggerContext); metricsConsoleAppender.setName("METRICS"); metricsConsoleAppender.start(); Logger rootLogger = loggerContext.getLogger(Logger.ROOT_LOGGER_NAME); rootLogger.setLevel(Level.INFO); rootLogger.addAppender(nonMetricsConsoleAppender); rootLogger.addAppender(metricsConsoleAppender); } }