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?
>>>>
>>>
>>>
>>
>
>

Reply via email to