@Override public void activateAsync(List<Object[]> args) { AsyncAppender asyncAppender = new AsyncAppender(); invokeMethod(asyncAppender, args); asyncAppender.setName(productName + "." + logger.getName() + ".AsyncAppender"); Enumeration<Appender> appenders = logger.getAllAppenders(); if (appenders == null) { throw new IllegalStateException("Activate async appender failed, no appender exist."); } while (appenders.hasMoreElements()) { asyncAppender.addAppender(appenders.nextElement()); } appenders = logger.getAllAppenders(); while (appenders.hasMoreElements()) { logger.removeAppender(appenders.nextElement()); } logger.addAppender(asyncAppender); setProductName(productName); } }
@Override public void activateAsync(List<Object[]> args) { AsyncAppender asyncAppender = new AsyncAppender(); invokeMethod(asyncAppender, args); asyncAppender.setName(productName + "." + logger.getName() + ".AsyncAppender"); Enumeration<Appender> appenders = logger.getAllAppenders(); if (appenders == null) { throw new IllegalStateException("Activate async appender failed, no appender exist."); } while (appenders.hasMoreElements()) { asyncAppender.addAppender(appenders.nextElement()); } appenders = logger.getAllAppenders(); while (appenders.hasMoreElements()) { logger.removeAppender(appenders.nextElement()); } logger.addAppender(asyncAppender); setProductName(productName); } }
if (null == async) { async = new AsyncAppender(); async.setName("async"); LogManager.getRootLogger().addAppender(async);