mirror of
https://github.com/spring-projects/spring-boot.git
synced 2026-09-25 19:09:03 +00:00
Update `Log4J2LoggingSystem` so that call to `setLevel` with a `null` level with remove the logger if it was previously configured by a `LoggingSystem` call. To track which loggers have been configured by us, and which have been configure directly by the user, a custom `LoggerConfig` subclass is used. We'll only remove `LevelSetLoggerConfig` classes, for any others we'll call `setLevel(null)` on the config. Prior to this commit, it was impossible to set then reset a logger level using the actuator endpoint. This is because Log4J doesn't provide a way to get the actual configured level. If the `setLevel(null)` has been applied, then `getLevel()` will return the value of the parent logger or a default value of `ERROR`. Fixes gh-24298