[
https://issues.apache.org/jira/browse/SOLR-16771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chris M. Hostetter updated SOLR-16771:
--------------------------------------
Attachment: SOLR-16771.patch
Status: Open (was: Open)
Attaching a patch to fix all this.
I'm surprised at how long this bug has existed.
What's really wild is that the old {{Log4jWatcher}} handled the
{{setLevel(Level.OFF)}} case correctly (although it's {{Log4Info.isSet()}} impl
seems like it was equally buggy in terms of returning info about what is/isn't
set)
> "Logging > Level" UI/API does not properly get/update loggers with 'unset'
> Level
> --------------------------------------------------------------------------------
>
> Key: SOLR-16771
> URL: https://issues.apache.org/jira/browse/SOLR-16771
> Project: Solr
> Issue Type: Bug
> Security Level: Public(Default Security Level. Issues are Public)
> Reporter: Chris M. Hostetter
> Assignee: Chris M. Hostetter
> Priority: Major
> Attachments: SOLR-16771.patch
>
>
> If you're using the Solr Admin UI, or the underlying {{/admin/info/logging}}
> request handler, the option to 'unset' a log level (so the specified logger
> will inherit the effective level from it's parent) doesn't actually work.
> This is because the underlying {{Log4j2Watcher}} impl is explicitly calling
> {{LoggerConfig.setLevel(Level.OFF)}} -- meaning it won't log anything
> regardless of what it's parent logger setting is.
> The correct behavior is to use {{LoggerConfig.setLevel(null)}}
> While looking into this, I realized that the impls of
> {{Log4j2Watcher.getAllLoggers()}} and {{Log4j2Watcher.Log4j2Info.isSet()}}
> are also really bizarre and don't make much sense -- making it impossible to
> tell in the UI which classes *actually* have a 'set' value in the underlying
> Log4j2 configuration.
> ( Just because a {{LoggerConfig}} exists for a loggerName, doesn't mean it's
> {{Level}} is "set" -- but the code currently assumes it does. That's the
> distinction between {{LoggerConfig.getLevel()}} and
> {{LoggerConfig.getExplicitLevel()}} -- the later may return null.)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]