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

Remko Popma commented on LOG4J2-321:
------------------------------------

I don't like the additional element. At the moment there is a hierarchy in the 
configuration: {{configuration}} encapsulates all and contains global 
attributes that pertain to all elements. Inside configuration there is an 
{{appenders}} and a {{loggers}} section. These are independent of each other 
unless they are linked with a {{-ref}} element. This is all very clean and 
intuitive. For illustration purposes, the basic skeleton looks like this:

{code}
<configuration>
  <appenders>
    ..
  </appenders>
  <loggers>
    ..
  </loggers>
</configuration>
{code}

I think keeping all global settings in the {{<configuration>}} element should 
be preferred because these settings apply to everything in the config. 

Introducing a new element just because some attributes are related is confusing 
and raises all kinds of questions for our users, for example: _I understand 
what loggers and appenders do, but what is a jmx? Can I have more than one? Do 
I need to hook it to one of my loggers with a jmx-ref element? And what about 
the AsyncLoggerConfig element, does this relate to {{<asyncRoot>}}? Does it 
need a ref? Do I need a separate {{<AsyncLoggerConfig>}} element for each 
{{<asyncLogger>}}?_
                
> Provide configuration alternative to system properties
> ------------------------------------------------------
>
>                 Key: LOG4J2-321
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-321
>             Project: Log4j 2
>          Issue Type: Bug
>    Affects Versions: 2.0-beta8
>            Reporter: Remko Popma
>             Fix For: 2.0-beta9
>
>
> Some components behaviour cannot be configured in the configuration file but 
> only with System properties. There is a strong preference to ensure all 
> behaviour can be configured in the configuration file.
> Properties that can be used to configure AsyncLoggers when all loggers are 
> Async:
> * 
> Log4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
> * AsyncLogger.ExceptionHandler
> * AsyncLogger.RingBufferSize
> * AsyncLogger.WaitStrategy
> * log4j.Clock - currently only used for timestamping RingBufferLogEvents. 
> Question: Should all LogEvents use this clock?
> The following system properties can be used to configure mixed Async Loggers:
> * AsyncLoggerConfig.ExceptionHandler  
> * AsyncLoggerConfig.RingBufferSize
> * AsyncLoggerConfig.WaitStrategy
> For JMX there is only the one "disable" property, in the mailing list it was 
> suggested to make this into an element rather than an attribute to 
> future-proof it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to