On Tue, Nov 8, 2016 at 9:33 AM, Ralph Goers <[email protected]> wrote: > Actually, Configurator.setLevel(loggerName, level) does all that for you.
Yes, and it it returned the old level, I wouldn't have needed to start this thread. > > Ralph > >> On Nov 8, 2016, at 7:10 AM, Benson Margulies <[email protected]> wrote: >> >> I read http://logging.apache.org/log4j/2.x/manual/migration.html which >> is how I got into the neighborhood of >> >> org.apache.logging.log4j.core.config.Configurator.setLevel >> >> I can follow your recipe instead. >> >> >> >> On Tue, Nov 8, 2016 at 9:05 AM, Ralph Goers <[email protected]> >> wrote: >>> Are you looking at the Logger or LoggerConfig. Log4j 2 separates Loggers >>> from their configuration. >>> >>> To modify a logLevel you need to do: >>> >>> LoggerContext context = (LoggerContext) LogManager.getContext(false); >>> Configuration config = context.getConfiguration(); >>> LoggerConfig loggerConfig = config.getLoggerConfig(loggerName); >>> loggerConfig.setLevel(level); >>> context.updateLoggers(); >>> >>> This process locates the configured Logger for the desired logger name, >>> sets its level and then modifies all the Loggers that use the LoggerConfig. >>> >>> Ralph >>> >>>> On Nov 8, 2016, at 6:51 AM, Benson Margulies <[email protected]> wrote: >>>> >>>> In old log4j, I've maintained a JUnit rule that temporarily throttles a >>>> logger. >>>> >>>> In log4j2, I see a setLevel, but no getLevel, which rather screws up >>>> 'temporarily'. >>>> >>>> What am I missing? >>>> >>> >>> >> > >
