public List<String> getStatuses() { List<String> list = new ArrayList<String>(); Iterator<Status> it = context.getStatusManager().getCopyOfStatusList().iterator(); while (it.hasNext()) { list.add(it.next().toString()); } return list; }
@Override protected void loadConfiguration(LoggingInitializationContext initializationContext, String location, LogFile logFile) { super.loadConfiguration(initializationContext, location, logFile); LoggerContext loggerContext = getLoggerContext(); stopAndReset(loggerContext); try { configureByResourceUrl(initializationContext, loggerContext, ResourceUtils.getURL(location)); } catch (Exception ex) { throw new IllegalStateException( "Could not initialize Logback logging from " + location, ex); } List<Status> statuses = loggerContext.getStatusManager().getCopyOfStatusList(); StringBuilder errors = new StringBuilder(); for (Status status : statuses) { if (status.getLevel() == Status.ERROR) { errors.append((errors.length() > 0) ? String.format("%n") : ""); errors.append(status.toString()); } } if (errors.length() > 0) { throw new IllegalStateException( String.format("Logback configuration error detected: %n%s", errors)); } }
public boolean containsMatch(String regex) { Pattern p = Pattern.compile(regex); for (Status status : sm.getCopyOfStatusList()) { String msg = status.getMessage(); Matcher matcher = p.matcher(msg); if (matcher.lookingAt()) { return true; } } return false; }
public List<String> getStatuses() { List<String> list = new ArrayList<String>(); Iterator<Status> it = context.getStatusManager().getCopyOfStatusList() .iterator(); while (it.hasNext()) { list.add(it.next().toString()); } return list; }
public int matchCount(String regex) { int count = 0; Pattern p = Pattern.compile(regex); for (Status status : sm.getCopyOfStatusList()) { String msg = status.getMessage(); Matcher matcher = p.matcher(msg); if (matcher.lookingAt()) { count++; } } return count; }
public boolean containsException(Class<?> exceptionType) { Iterator<Status> stati = sm.getCopyOfStatusList().iterator(); while (stati.hasNext()) { Status status = stati.next(); Throwable t = status.getThrowable(); if (t != null && t.getClass().getName().equals(exceptionType.getName())) { return true; } } return false; }
final StatusManager sm = rootLogger.getLoggerContext().getStatusManager(); int count = 0; for (Status s : sm.getCopyOfStatusList()) { final int level = s.getEffectiveLevel(); if (level == Status.INFO) {
public static void print(StatusManager sm, long threshold) { StringBuilder sb = new StringBuilder(); List<Status> filteredList = filterStatusListByTimeThreshold(sm.getCopyOfStatusList(), threshold); buildStrFromStatusList(sb, filteredList); ps.println(sb.toString()); }
public void printList(StringBuilder buf, StatusManager sm) { buf.append("<table>\r\n"); printHeader(buf); List<Status> statusList = sm.getCopyOfStatusList(); for (Status s : statusList) { count++; printStatus(buf, s); } buf.append("</table>\r\n"); }
/** * Return the time of last reset. -1 if last reset time could not be found * * @return time of last reset or -1 */ public long timeOfLastReset() { List<Status> statusList = sm.getCopyOfStatusList(); if (statusList == null) return -1; int len = statusList.size(); for (int i = len - 1; i >= 0; i--) { Status s = statusList.get(i); if (CoreConstants.RESET_MSG_PREFIX.equals(s.getMessage())) { return s.getDate(); } } return -1; }
public boolean containsMatch(long threshold, int level, String regex) { List<Status> filteredList = filterStatusListByTimeThreshold(sm.getCopyOfStatusList(), threshold); Pattern p = Pattern.compile(regex); for (Status status : filteredList) { if (level != status.getLevel()) { continue; } String msg = status.getMessage(); Matcher matcher = p.matcher(msg); if (matcher.lookingAt()) { return true; } } return false; }
/** * Print status messages retrospectively */ private void retrospectivePrint() { if(context == null) return; long now = System.currentTimeMillis(); StatusManager sm = context.getStatusManager(); List<Status> statusList = sm.getCopyOfStatusList(); for (Status status : statusList) { long timestamp = status.getDate(); if (now - timestamp < retrospective) { print(status); } } }
public int getHighestLevel(long threshold) { List<Status> filteredList = filterStatusListByTimeThreshold(sm.getCopyOfStatusList(), threshold); int maxLevel = Status.INFO; for (Status s : filteredList) { if (s.getLevel() > maxLevel) maxLevel = s.getLevel(); } return maxLevel; }
public int matchCount(String regex) { int count = 0; Pattern p = Pattern.compile(regex); for (Status status : sm.getCopyOfStatusList()) { String msg = status.getMessage(); Matcher matcher = p.matcher(msg); if (matcher.lookingAt()) { count++; } } return count; }
public boolean containsMatch(String regex) { Pattern p = Pattern.compile(regex); for (Status status : sm.getCopyOfStatusList()) { String msg = status.getMessage(); Matcher matcher = p.matcher(msg); if (matcher.lookingAt()) { return true; } } return false; }
public static void print(StatusManager sm, long threshold) { StringBuilder sb = new StringBuilder(); List<Status> filteredList = filterStatusListByTimeThreshold(sm.getCopyOfStatusList(), threshold); buildStrFromStatusList(sb, filteredList); ps.println(sb.toString()); }
public int getHighestLevel(long threshold) { List<Status> filteredList = filterStatusListByTimeThreshold(sm.getCopyOfStatusList(), threshold); int maxLevel = Status.INFO; for (Status s : filteredList) { if (s.getLevel() > maxLevel) maxLevel = s.getLevel(); } return maxLevel; }
private boolean checkError() { Iterator it = context.getStatusManager().getCopyOfStatusList().iterator(); ErrorStatus es = (ErrorStatus)it.next(); return PropertyAction.INVALID_ATTRIBUTES.equals(es.getMessage()); }
@Test public void testNoStart() { // listAppender.start(); listAppender.setContext(lc); root.addAppender(listAppender); Logger logger = lc.getLogger(LoggerTest.class); logger.debug("hello"); List<Status> statusList = lc.getStatusManager().getCopyOfStatusList(); Status s0 = statusList.get(0); assertEquals(Status.WARN, s0.getLevel()); assertTrue(s0.getMessage().startsWith("Attempted to append to non started")); }
protected void assertNoErrors(JoranConfigurator config) { List<Status> status = config.getStatusManager().getCopyOfStatusList(); for (Status s : status) { assertThat(s, is(not(instanceOf(ErrorStatus.class)))); } } }