@Override
  public Configuration reconfigure() {
    final Configuration refreshedParent = super.reconfigure();

    if (refreshedParent != null
        && AbstractConfiguration.class.isAssignableFrom(refreshedParent.getClass())) {

      try {
        final XmlExtensionConfiguration refreshed =
            new XmlExtensionConfiguration(
                refreshedParent.getLoggerContext(),
                refreshedParent.getConfigurationSource().resetInputStream());
        createConsoleAppender();
        return refreshed;
      } catch (final IOException e) {
        LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME)
            .error("Failed to reload the Log4j2 Xml configuration file", e);
      }
    }

    LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME)
        .warn("Cannot programmatically reconfigure loggers");
    return refreshedParent;
  }
Instantiates a new Xml extension configuration.

@param loggerContext the logger context
@param configSource the Configuration Source
app/src/main/java/org/hyperledger/besu/cli/logging/XmlExtensionConfiguration.java