protected void setupLogFilter() { final Filter filter = new AbstractFilter() { @Override public Result filter(final LogEvent event) { if (event.getLoggerFqcn().startsWith("org.onehippo.repository.concurrent") || event.getLoggerFqcn().startsWith("org.hippoecm.repository.concurrent")) { return Result.NEUTRAL; } if (event.getThrown() != null) { if (isRecoverable(event.getThrown())) { return Result.DENY; } } return Result.NEUTRAL; } }; final Configuration config = LoggerContext.getContext(false).getConfiguration(); for (Appender appender : config.getAppenders().values()) { if (appender instanceof Filterable /* should always be true, at least for standard log4j2 appenders */) { ((Filterable)appender).addFilter(filter); } } }