Refine search
private void configureLoggerContextByURL(LoggerContext context, URL url) { try { JoranConfigurator configurator = new JoranConfigurator(); context.reset(); configurator.setContext(context); configurator.doConfigure(url); } catch (JoranException e) { } StatusPrinter.printInCaseOfErrorsOrWarnings(context); }
public void reloadByURL(URL url) throws JoranException { StatusListenerAsList statusListenerAsList = new StatusListenerAsList(); addStatusListener(statusListenerAsList); addInfo("Resetting context: " + loggerContext.getName()); loggerContext.reset(); // after a reset the statusListenerAsList gets removed as a listener addStatusListener(statusListenerAsList); try { if (url != null) { JoranConfigurator configurator = new JoranConfigurator(); configurator.setContext(loggerContext); configurator.doConfigure(url); addInfo("Context: " + loggerContext.getName() + " reloaded."); } } finally { removeStatusListener(statusListenerAsList); if (debug) { StatusPrinter.print(statusListenerAsList.getStatusList()); } } }
private static void buildStrFromStatusList(StringBuilder sb, List<Status> statusList) { if(statusList == null) return; for(Status s : statusList) { buildStr(sb, "", s); } }
public static void main(String[] args) { Logger logger = LoggerFactory.getLogger(GoMDC.class); LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory(); try { JoranConfigurator configurator = new JoranConfigurator(); configurator.setContext(lc); lc.reset(); configurator.doConfigure("mdcFilter.xml"); } catch (JoranException je) { StatusPrinter.print(lc); } logger.debug("I know me " + 0); MDC.put("key", "val"); logger.debug("I know me " + 1); StatusPrinter.print(lc); } }
public static void main(String[] args) { Logger logger = LoggerFactory.getLogger("chapters.introduction.HelloWorld2"); logger.debug("Hello world."); // print internal state LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory(); StatusPrinter.print(lc); } }
@Test public void recursiveLogbackInitialization() { Logger logger = LoggerFactory.getLogger("RecursiveInitializationTest" + diff); logger.info("RecursiveInitializationTest"); LoggerContext loggerContext = (LoggerContext) LoggerFactory .getILoggerFactory(); StatusPrinter.printInCaseOfErrorsOrWarnings(loggerContext); StatusChecker statusChecker = new StatusChecker(loggerContext); assertEquals("Was expecting no errors", Status.WARN, statusChecker.getHighestLevel(0)); }
public static void main(String[] args) { // assume SLF4J is bound to logback in the current environment LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory(); // print logback's internal status StatusPrinter.print(lc); logger.info("Entering application."); Foo foo = new Foo(); foo.doIt(); logger.info("Exiting application."); } }
@Test public void layoutInsteadOfEncoer() throws JoranException { jc.doConfigure(ClassicTestConstants.JORAN_INPUT_PREFIX + "compatibility/layoutInsteadOfEncoder.xml"); StatusPrinter.print(loggerContext); StatusChecker checker = new StatusChecker(loggerContext); checker.assertContainsMatch(Status.WARN, "This appender no longer admits a layout as a sub-component"); checker.assertContainsMatch(Status.WARN, "See also "+CODES_URL+"#layoutInsteadOfEncoder for details"); ch.qos.logback.classic.Logger root = (ch.qos.logback.classic.Logger) loggerContext.getLogger(Logger.ROOT_LOGGER_NAME); FileAppender<ILoggingEvent> fileAppender = (FileAppender<ILoggingEvent>) root.getAppender("LIOE"); assertTrue(fileAppender.isStarted()); assertTrue(fileAppender.getEncoder() instanceof LayoutWrappingEncoder); }
loggerContext = new LoggerContext(); loggerContext.setName(contextName); synchronizedContextMap.put(contextName, loggerContext); URL url = findConfigFileURL(ctx, loggerContext); StatusPrinter.printInCaseOfErrorsOrWarnings(loggerContext);
/** * Print the contents of the context's status data. * * @param context */ public static void print(Context context) { print(context, 0); }
/** * Package access for testing purposes. */ void init() { try { try { new ContextInitializer(defaultLoggerContext).autoConfig(); } catch (JoranException je) { Util.report("Failed to auto configure default logger context", je); } // logback-292 if (!StatusUtil.contextHasStatusListener(defaultLoggerContext)) { StatusPrinter.printInCaseOfErrorsOrWarnings(defaultLoggerContext); } contextSelectorBinder.init(defaultLoggerContext, KEY); initialized = true; } catch (Exception t) { // see LOGBACK-1159 Util.report("Failed to instantiate [" + LoggerContext.class.getName() + "]", t); } }
public static void buildStr(StringBuilder sb, String indentation, Status s) { String prefix; if (s.hasChildren()) { prefix = indentation + "+ "; } else { prefix = indentation + "|-"; } if (cachingDateFormat != null) { String dateStr = cachingDateFormat.format(s.getDate()); sb.append(dateStr).append(" "); } sb.append(prefix).append(s).append(CoreConstants.LINE_SEPARATOR); if (s.getThrowable() != null) { appendThrowable(sb, s.getThrowable()); } if (s.hasChildren()) { Iterator<Status> ite = s.iterator(); while (ite.hasNext()) { Status child = ite.next(); buildStr(sb, indentation + " ", child); } } }
public static void print(List<Status> statusList) { StringBuilder sb = new StringBuilder(); buildStrFromStatusList(sb, statusList); ps.println(sb.toString()); }
@Test public void checkReconfigureTaskScheduledWhenDefaultScanPeriodUsed() throws JoranException { File file = new File(SCAN_PERIOD_DEFAULT_FILE_AS_STR); configure(file); final List<ScheduledFuture<?>> scheduledFutures = loggerContext.getScheduledFutures(); assertFalse(scheduledFutures.isEmpty()); StatusPrinter.print(loggerContext); }
static void configureViaXML_File() { LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory(); try { JoranConfigurator configurator = new JoranConfigurator(); configurator.setContext(lc); lc.reset(); URL url = Loader.getResourceBySelfClassLoader("chapters/mdc/simpleMDC.xml"); configurator.doConfigure(url); } catch (JoranException je) { StatusPrinter.print(lc); } }
public static void main(String[] args) throws InterruptedException { Logger logger = (Logger) LoggerFactory.getLogger(Main.class); StatusPrinter.print((LoggerContext) LoggerFactory.getILoggerFactory()); OThread ot = new OThread(); ot.start(); Thread.sleep(OThread.WAIT_MILLIS-500); logger.info("About to interrupt"); ot.interrupt(); logger.info("After interrupt"); logger.info("Leaving main"); } }
loggerContext = new LoggerContext(); loggerContext.setName(contextName); synchronizedContextMap.put(contextName, loggerContext); URL url = findConfigFileURL(ctx, loggerContext); StatusPrinter.printInCaseOfErrorsOrWarnings(loggerContext);
public static void print(StatusManager sm) { print(sm, 0); }
/** * Print the contents of the context statuses, but only if they contain * warnings or errors. * * @param context */ public static void printInCaseOfErrorsOrWarnings(Context context) { printInCaseOfErrorsOrWarnings(context, 0); }
public static void buildStr(StringBuilder sb, String indentation, Status s) { String prefix; if (s.hasChildren()) { prefix = indentation + "+ "; } else { prefix = indentation + "|-"; } if (simpleDateFormat != null) { Date date = new Date(s.getDate()); String dateStr = simpleDateFormat.format(date); sb.append(dateStr).append(" "); } sb.append(prefix).append(s).append(CoreConstants.LINE_SEPARATOR); if (s.getThrowable() != null) { appendThrowable(sb, s.getThrowable()); } if (s.hasChildren()) { Iterator<Status> ite = s.iterator(); while (ite.hasNext()) { Status child = ite.next(); buildStr(sb, indentation + " ", child); } } }