Besides the ability to enable or disable the shutdown hook, there should be a ShutdownRegistrationStrategy interface for customizing how to register a shutdown callback in LoggerContext. This will allow application servers to specify their own class that can register the shutdown callback for a LoggerContext.
To make this really flexible, Log4jContextFactory should be the class that creates the ShutdownRegistrationStrategy.
The basic idea behind this feature is already implemented. I'd like to make this API a bit better before 2.1 so we aren't stuck with a useless interface later on.