in src/main/java/org/apache/sling/commons/log/logback/internal/LogConfigManager.java [316:377]
public void start() {
// initial setup using framework properties
setDefaultConfiguration(getBundleConfiguration(bundleContext));
bridgeHandlerInstalled = maybeInstallSlf4jBridgeHandler(bundleContext);
configAdminSupport.start(bundleContext, this);
// enable the LevelChangePropagator during any reset
// http://logback.qos.ch/manual/configuration.html#LevelChangePropagator
resetListeners.add(new LevelChangePropagatorChecker(() -> this.bridgeHandlerInstalled));
resetListeners.add(this);
try {
appenderTracker = new AppenderTracker(bundleContext, this);
appenderTracker.open(true);
serviceTrackers.add(appenderTracker);
resetListeners.add(appenderTracker);
} catch (InvalidSyntaxException e) {
logger.error("Failed to open the appender tracker", e);
}
try {
configSourceTracker = new ConfigSourceTracker(bundleContext, this);
configSourceTracker.open(true);
serviceTrackers.add(configSourceTracker);
resetListeners.add(configSourceTracker);
} catch (InvalidSyntaxException e) {
logger.error("Failed to open the config source tracker", e);
}
try {
filterTracker = new FilterTracker(bundleContext, this);
filterTracker.open(true);
serviceTrackers.add(filterTracker);
resetListeners.add(filterTracker);
} catch (InvalidSyntaxException e) {
logger.error("Failed to open the filter tracker", e);
}
turboFilterTracker = new TurboFilterTracker(bundleContext);
turboFilterTracker.open(true);
serviceTrackers.add(turboFilterTracker);
resetListeners.add(turboFilterTracker);
resetListeners.add(new RootLoggerListener()); // Should be invoked at last
loggerContext.addListener(osgiIntegrationListener);
registerWebConsoleSupport();
registerEventHandler();
// initial configuration must be done synchronously (aka immediately)
addInfo("LogbackManager: BEGIN initial configuration");
failSafeConfigure();
addInfo("LogbackManager: END initialconfiguration");
// now open the gate for regular configuration
started = true;
// Now check once if any other config was added while we were starting
checkForNewConfigsWhileStarting(loggerContext);
}