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

Ralph Goers edited comment on LOG4J2-3406 at 2/17/22, 2:10 PM:
---------------------------------------------------------------

Kudos to you! Someone is paying attention! Except for the minor detail that I 
committed that change and not Gary your analysis is spot on. In fact, Matt’s 
fix, which I had started from, had this exact change in it. I chose to leave it 
out since it wasn’t necessary to address that feature request. But it was a 
good idea and I would support this. 

I will still hate the properties format though. ;-)


was (Author: [email protected]):
Kudos to you! Someone is paying attention! Except for the minor detail that I 
committed that change and not Gary your analysis is spot on. In fact, Matt’s 
fix, which I had started on had this exact change in it. I chose to leave it 
out since it wasn’t necessary to address that feature request. But it was a 
good idea and I would support this. 

I will still hate the properties format though. ;-)

> Implicit component names in the properties format
> -------------------------------------------------
>
>                 Key: LOG4J2-3406
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-3406
>             Project: Log4j 2
>          Issue Type: Improvement
>          Components: Configurators
>    Affects Versions: 2.17.1
>            Reporter: Piotr P. Karwasz
>            Priority: Minor
>
> The properties configuration syntax requires a lot of additional properties 
> to specify a component's name or type. On the other hand a lot of random 
> identifiers must be generated to provide unique prefixes to each component in 
> a list.
> I open this ticket to discuss the possibility of extending the properties 
> format and use the unique identifier as default component's name. E.g. as an 
> alternative to:
> {noformat}
> appender.<1234>.type = Console
> appender.<1234>.name = STDOUT
> {noformat}
> we might write:
> {noformat}
> appender.STDOUT.type = Console
> {noformat}
> This is already implemented for the {{<Properties>}} and {{<CustomLevels>}} 
> elements, where the identifier *is* the name of the property.
> Given that [~ggregory]'s solution to LOG4J2-3341 introduced a real property 
> {{levelAndRefs}} for the logger components, we might also allow identifiers 
> containing dots for loggers (if the property ends in {{{}.levelAndRefs{}}}). 
> To find the identifiers of all loggers we might use the following rule:
>  * if there is a property {{logger.foo}} (these were ignored in 2.17.1), 
> {{foo}} is an identifier and the property is equivalent to 
> {{{}logger.foo.levelAndRefs{}}},
>  * if there is a property {{{}logger.foo.name{}}}, {{foo}} is an identifier 
> (this was the unique rule in 2.17.1),
>  * if there is a property {{logger.foo.bar.baz.levelAndRefs}} or 
> {{{}logger.foo.bar.baz.level{}}}, then {{foo.bar.baz}} is an identifier,



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to