Chris M. Hostetter created SOLR-16771:
-----------------------------------------
Summary: "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
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]