Remko Popma created LOG4J2-2018:
-----------------------------------
Summary: LoggerNameLevelRewritePolicy documentation is wrong,
example is broken
Key: LOG4J2-2018
URL: https://issues.apache.org/jira/browse/LOG4J2-2018
Project: Log4j 2
Issue Type: Bug
Components: Appenders, Documentation
Affects Versions: 2.8.2
Reporter: Remko Popma
Assignee: Remko Popma
Fix For: 2.9
The documentation on the
[LoggerNameLevelRewritePolicy|http://logging.apache.org/log4j/2.x/manual/appenders.html#RewriteAppender]
is wrong:
Following the example in the documentation gives an error.
{code}
<LoggerNameLevelRewritePolicy loggerName="com.foo.bar">
<KeyValuePair key="INFO" value="DEBUG"/>
<KeyValuePair key="WARN" value="INFO"/>
</LoggerNameLevelRewritePolicy>
{code}
The {{loggerName}} does not exist, resulting in this error:
*{color:red}2017-08-16 13:46:13,712 main ERROR LoggerNameLevelRewritePolicy
contains an invalid element or attribute "loggerName"
{color}*
The implementation looks like this, it appears that the configuration should
use {{logger}} instead:
{code}
@PluginFactory
public static LoggerNameLevelRewritePolicy createPolicy(
// @formatter:off
@PluginAttribute("logger") final String loggerNamePrefix,
@PluginElement("KeyValuePair") final KeyValuePair[] levelPairs) {
...
{code}
I think {{loggerName}} is a more descriptive name for the attribute, but users
may already be using {{logger}} after checking the implementation.
Can we give this attribute an alias so that both {{loggerName}} and {{logger}}
work? That way we can keep the current (descriptive) documentation and avoid
breaking users existing configuration.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)