[ 
https://issues.apache.org/jira/browse/LOG4J2-945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14530818#comment-14530818
 ] 

Gary Gregory commented on LOG4J2-945:
-------------------------------------

[~swehner]:
I think we need confirmation that the patch (if it still applies cleanly to git 
master) does not degrade performance during normal logging. 

I think we (as [~ralphgoers] mentions) are waiting on _someone_ to volunteer to 
implement [~rem...@yahoo.com]'s idea:
{quote}
We can create a JMH performance test to verify the performance impact.
{quote}
But we are all busy with day jobs too, so if you feel like pitching in some 
more, that would be greatly appreciated.

Note that now, we are also trying to cut a 2.3 release candidate, so I cannot 
guarantee that this would make it in for 2.3 vs. 2.4.

Thank you for pinging us again though. This feels to me like an important bug 
to fix.

> Reconfiguring statusLogger to a higher level doesn't work correctly
> -------------------------------------------------------------------
>
>                 Key: LOG4J2-945
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-945
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.1
>            Reporter: Stefan Wehner
>            Priority: Minor
>         Attachments: callback_on_reconfig.patch, remove_listeners_level.patch
>
>
> When reconfiguring log4j and changing the level of the status logger to a 
> higher level - e.g. from WARN to DEBUG, it doesn't work correctly.
> Steps to reproduce:
> # Configure from log4j2.xml containing:
> {code}
> <Configuration status="WARN" monitorInterval="5">
> ...
> {code}
> # With the app running, change status to a higher level:
> {code}
> <Configuration status="DEBUG" monitorInterval="5">
> ...
> {code}
> # Observe that the log config is reloaded, but no debug messages for the 
> status logger appear.
> From what I've seen this is because the {{StatusConfiguration.initialize()}} 
> reconfigures the listeners' level
> [StatusConfig:193|https://git-wip-us.apache.org/repos/asf?p=logging-log4j2.git;a=blob;f=log4j-core/src/main/java/org/apache/logging/log4j/core/config/status/StatusConfiguration.java;h=4d2ee51b4cf5dcb6f62029fe307093a759bf0af7;hb=HEAD#l193]
> But it doesn't update the {{listenersLevel}} field that the {{StatusLogger}} 
> uses for checking if the logger is enabled (I understand this should be the 
> maximum of all of the listener's levels)
> [StatusLogger:273|https://git-wip-us.apache.org/repos/asf?p=logging-log4j2.git;a=blob;f=log4j-api/src/main/java/org/apache/logging/log4j/status/StatusLogger.java;h=39d447d9793ca08a7d86b9eaaf6ef3dd406cf9a2;hb=HEAD#l273]
> So in this case the listenersLevel is still at WARN, even though the console 
> listener has a DEBUG level, and all the log messages are ignored because 
> isEnabled(DEBUG) returns false.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org
For additional commands, e-mail: log4j-dev-h...@logging.apache.org

Reply via email to