Patch applied. TY. In the future, please create a JIRA for patches.

Keep them coming :-)

Cheers,
Gary

On Sun, Aug 9, 2015 at 1:11 AM, Xen <[email protected]> wrote:

> I've seen the commit. I will check it out.
>
> Offtopic: fixed a typo in the javadoc:
>
>
> diff --git
> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
> index 3c8c44a..14ea97b 100644
> ---
> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
> +++
> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
> @@ -66,7 +66,7 @@ import org.apache.logging.log4j.util.Strings;
>   * </ol>
>   *
>   * If the ConfigurationFactory that was added returns null on a call to
> - * getConfiguration the any other ConfigurationFactories found as plugins
> will
> + * getConfiguration then any other ConfigurationFactories found as
> plugins will
>   * be called in their respective order. DefaultConfiguration is always
> called
>   * last if no configuration has been returned.
>   */
>
>
> "I will check it out." Now isn't that ambiguous :P.
>
> Regards..
>
>
>
>
> Quoting Gary Gregory <[email protected]>:
>
> Pushed to Git master.
>>
>> Xen: Please see the setLevel methods in Configurator.
>>
>> Gary
>>
>> On Sat, Aug 8, 2015 at 4:24 PM, Gary Gregory <[email protected]>
>> wrote:
>>
>> Please see the patch in https://issues.apache.org/jira/browse/LOG4J2-1090
>>>
>>> Gary
>>>
>>> On Sat, Aug 8, 2015 at 4:05 PM, Ralph Goers <[email protected]>
>>> wrote:
>>>
>>> Yes.
>>>>
>>>> Ralph
>>>>
>>>> > On Aug 8, 2015, at 4:03 PM, Gary Gregory <[email protected]>
>>>> wrote:
>>>> >
>>>> > That's my bad, I misread Configurator for Configuration.
>>>> >
>>>> > That said, the
>>>> > method
>>>>
>>>> org.apache.logging.log4j.core.config.AbstractConfiguration.getRootLogger()
>>>> > is not in the Configuration interface. Is it OK to add it?
>>>> >
>>>> > Gary
>>>> >
>>>> > On Sat, Aug 8, 2015 at 3:42 PM, Ralph Goers <
>>>> [email protected]
>>>> >
>>>> > wrote:
>>>> >
>>>> >> I just noticed you added this to AbstractConfiguration. Wouldn’t it
>>>> be
>>>> >> easier for users to do it as a method on Configurator?
>>>> >>
>>>> >> Ralph
>>>> >>
>>>> >>> On Aug 8, 2015, at 12:55 PM, Gary Gregory <[email protected]>
>>>> >> wrote:
>>>> >>>
>>>> >>> setLevel, setRootLevel; code review please, note the added check "
>>>> if
>>>> >>> (!loggerConfig.getLevel().equals(level)) ..."
>>>> >>>
>>>> >>> diff --git
>>>> >>>
>>>> >>
>>>>
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>>
>>>> >>
>>>>
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>> index ada5900..7ee09ca 100644
>>>> >>> ---
>>>> >>>
>>>> >>
>>>>
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>> +++
>>>> >>>
>>>> >>
>>>>
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>> @@ -39,6 +39,7 @@
>>>> >>> import org.apache.logging.log4j.core.Filter;
>>>> >>> import org.apache.logging.log4j.core.Layout;
>>>> >>> import org.apache.logging.log4j.core.LogEvent;
>>>> >>> +import org.apache.logging.log4j.core.LoggerContext;
>>>> >>> import org.apache.logging.log4j.core.appender.AsyncAppender;
>>>> >>> import org.apache.logging.log4j.core.appender.ConsoleAppender;
>>>> >>> import org.apache.logging.log4j.core.async.AsyncLoggerConfig;
>>>> >>> @@ -829,4 +830,23 @@
>>>> >>>        return buffer.toByteArray();
>>>> >>>    }
>>>> >>>
>>>> >>> +    @Override
>>>> >>> +    public void setLevel(final String loggerName, final Level
>>>> level)
>>>> {
>>>> >>> +        setLevel(getLoggerConfig(loggerName), level);
>>>> >>> +    }
>>>> >>> +
>>>> >>> +    @Override
>>>> >>> +    public void setRootLevel(final Level level) {
>>>> >>> +        setLevel(getRootLogger(), level);
>>>> >>> +    }
>>>> >>> +
>>>> >>> +    private void setLevel(final LoggerConfig loggerConfig, final
>>>> Level
>>>> >>> level) {
>>>> >>> +        if (!loggerConfig.getLevel().equals(level)) {
>>>> >>> +            loggerConfig.setLevel(level);
>>>> >>> +            final LoggerContext loggerContext = (LoggerContext)
>>>> >>> LogManager.getContext(false);
>>>> >>> +            loggerContext.updateLoggers();
>>>> >>> +        }
>>>> >>> +    }
>>>> >>> +
>>>> >>> +
>>>> >>> }
>>>> >>> diff --git
>>>> >>>
>>>> >>
>>>>
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configuration.java
>>>> >>>
>>>> >>
>>>>
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configuration.java
>>>> >>> index c592b05..29fb7b2 100644
>>>> >>> ---
>>>> >>>
>>>> >>
>>>>
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configuration.java
>>>> >>> +++
>>>> >>>
>>>> >>
>>>>
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configuration.java
>>>> >>> @@ -137,4 +137,18 @@
>>>> >>>     * @return the custom levels defined in the current configuration
>>>> >>>     */
>>>> >>>    List<CustomLevelConfig> getCustomLevels();
>>>> >>> +
>>>> >>> +    /**
>>>> >>> +     * Sets the level of the given logger name.
>>>> >>> +     *
>>>> >>> +     * @param loggerName the logger name
>>>> >>> +     * @param level the new level
>>>> >>> +     */
>>>> >>> +    void setLevel(String loggerName, Level level);
>>>> >>> +
>>>> >>> +    /**
>>>> >>> +     * Sets the level of the root logger.
>>>> >>> +     * @param level the new level
>>>> >>> +     */
>>>> >>> +    void setRootLevel(Level level);
>>>> >>> }
>>>> >>>
>>>> >>> Gary
>>>> >>>
>>>> >>> On Sat, Aug 8, 2015 at 11:14 AM, Ralph Goers <
>>>> [email protected]
>>>> >>>
>>>> >>> wrote:
>>>> >>>
>>>> >>>> Yup.
>>>> >>>>
>>>> >>>> And while your at it you might want to add setRootLevel(Level
>>>> level);
>>>> >>>>
>>>> >>>> Ralph
>>>> >>>>
>>>> >>>>> On Aug 8, 2015, at 10:19 AM, Gary Gregory <[email protected]
>>>> >
>>>> >>>> wrote:
>>>> >>>>>
>>>> >>>>> Like this:
>>>> >>>>>
>>>> >>>>> diff --git
>>>> >>>>>
>>>> >>>>
>>>> >>
>>>>
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>>>>
>>>> >>>>
>>>> >>
>>>>
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>>>> index ada5900..bf01c3e 100644
>>>> >>>>> ---
>>>> >>>>>
>>>> >>>>
>>>> >>
>>>>
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>>>> +++
>>>> >>>>>
>>>> >>>>
>>>> >>
>>>>
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java
>>>> >>>>> @@ -39,6 +39,7 @@
>>>> >>>>> import org.apache.logging.log4j.core.Filter;
>>>> >>>>> import org.apache.logging.log4j.core.Layout;
>>>> >>>>> import org.apache.logging.log4j.core.LogEvent;
>>>> >>>>> +import org.apache.logging.log4j.core.LoggerContext;
>>>> >>>>> import org.apache.logging.log4j.core.appender.AsyncAppender;
>>>> >>>>> import org.apache.logging.log4j.core.appender.ConsoleAppender;
>>>> >>>>> import org.apache.logging.log4j.core.async.AsyncLoggerConfig;
>>>> >>>>> @@ -788,6 +789,13 @@
>>>> >>>>>      return list;
>>>> >>>>>  }
>>>> >>>>>
>>>> >>>>> +    public void setLevel(String loggerName, Level level) {
>>>> >>>>> +        LoggerConfig loggerConfig = getLoggerConfig(loggerName);
>>>> >>>>> +        loggerConfig.setLevel(level);
>>>> >>>>> +        final LoggerContext loggerContext = (LoggerContext)
>>>> >>>>> LogManager.getContext(false);
>>>> >>>>> +        loggerContext.updateLoggers();
>>>> >>>>> +    }
>>>> >>>>> +
>>>> >>>>>  private void setParents() {
>>>> >>>>>       for (final Map.Entry<String, LoggerConfig> entry :
>>>> >>>>> loggers.entrySet()) {
>>>> >>>>>          final LoggerConfig logger = entry.getValue();
>>>> >>>>>
>>>> >>>>> ?
>>>> >>>>>
>>>> >>>>> On Fri, Aug 7, 2015 at 5:43 AM, Ralph Goers <
>>>> >> [email protected]>
>>>> >>>>> wrote:
>>>> >>>>>
>>>> >>>>>> I'd recommend the Configurator class.
>>>> >>>>>>
>>>> >>>>>> Ralph
>>>> >>>>>>
>>>> >>>>>>> On Aug 6, 2015, at 9:46 PM, Gary Gregory <
>>>> [email protected]>
>>>> >>>> wrote:
>>>> >>>>>>>
>>>> >>>>>>>
>>>> >>>>>>> For the simple case where you want to update one level, I think
>>>> we
>>>> >>>> should
>>>> >>>>>>> have a one method call for folks. Where would be the best place
>>>> to
>>>> >> hang
>>>> >>>>>>> that?
>>>> >>>>>>>
>>>> >>>>>>> Gary
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>>>
>>>> ---------------------------------------------------------------------
>>>> >>>>>> To unsubscribe, e-mail:
>>>> [email protected]
>>>> >>>>>> For additional commands, e-mail:
>>>> [email protected]
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> --
>>>> >>>>> E-Mail: [email protected] | [email protected]
>>>> >>>>> Java Persistence with Hibernate, Second Edition
>>>> >>>>> <http://www.manning.com/bauer3/>
>>>> >>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/
>>>> >
>>>> >>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>> >>>>> Blog: http://garygregory.wordpress.com
>>>> >>>>> Home: http://garygregory.com/
>>>> >>>>> Tweet! http://twitter.com/GaryGregory
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> ---------------------------------------------------------------------
>>>> >>>> To unsubscribe, e-mail: [email protected]
>>>> >>>> For additional commands, e-mail:
>>>> [email protected]
>>>> >>>>
>>>> >>>>
>>>> >>>
>>>> >>>
>>>> >>> --
>>>> >>> E-Mail: [email protected] | [email protected]
>>>> >>> Java Persistence with Hibernate, Second Edition
>>>> >>> <http://www.manning.com/bauer3/>
>>>> >>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>>> >>> Spring Batch in Action <http://www.manning.com/templier/>
>>>> >>> Blog: http://garygregory.wordpress.com
>>>> >>> Home: http://garygregory.com/
>>>> >>> Tweet! http://twitter.com/GaryGregory
>>>> >>
>>>> >>
>>>> >>
>>>> >> ---------------------------------------------------------------------
>>>> >> To unsubscribe, e-mail: [email protected]
>>>> >> For additional commands, e-mail: [email protected]
>>>> >>
>>>> >>
>>>> >
>>>> >
>>>> > --
>>>> > E-Mail: [email protected] | [email protected]
>>>> > Java Persistence with Hibernate, Second Edition
>>>> > <http://www.manning.com/bauer3/>
>>>> > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>>> > Spring Batch in Action <http://www.manning.com/templier/>
>>>> > Blog: http://garygregory.wordpress.com
>>>> > Home: http://garygregory.com/
>>>> > Tweet! http://twitter.com/GaryGregory
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [email protected]
>>>> For additional commands, e-mail: [email protected]
>>>>
>>>>
>>>>
>>>
>>> --
>>> E-Mail: [email protected] | [email protected]
>>> Java Persistence with Hibernate, Second Edition
>>> <http://www.manning.com/bauer3/>
>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>> Spring Batch in Action <http://www.manning.com/templier/>
>>> Blog: http://garygregory.wordpress.com
>>> Home: http://garygregory.com/
>>> Tweet! http://twitter.com/GaryGregory
>>>
>>>
>>
>>
>> --
>> E-Mail: [email protected] | [email protected]
>> Java Persistence with Hibernate, Second Edition
>> <http://www.manning.com/bauer3/>
>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>> Spring Batch in Action <http://www.manning.com/templier/>
>> Blog: http://garygregory.wordpress.com
>> Home: http://garygregory.com/
>> Tweet! http://twitter.com/GaryGregory
>>
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>


-- 
E-Mail: [email protected] | [email protected]
Java Persistence with Hibernate, Second Edition
<http://www.manning.com/bauer3/>
JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
Spring Batch in Action <http://www.manning.com/templier/>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Reply via email to