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

Ian Barfield edited comment on LOG4J2-798 at 8/26/14 2:53 PM:
--------------------------------------------------------------

Gave the patch a once over. Without comment on the rest of the changes, it does 
seem to fix at least the specific issue of the 'Level' category erroneously 
triggering core package scans. Naturally, I feel that the solution I created 
for codec is superior for that issue since it uses an existing, well-documented 
and supported standard for controlling overrides etc.

However, as long as I can prevent any package scans and include my 
configuration factory via a system property (as a specific class -- not a 
package that requires jar scans), then that's all I really need.


was (Author: ianbarfield):
Gave the patch a once over. Without comment on the rest of the changes, it does 
seem to fix at least the specific issue of the 'Level' category erroneously 
triggering core package scans. Naturally, I feel that the solution I created 
for codec is superior for issue since it uses an existing, well-documented and 
supported standard for controlling overrides etc.

However, as long as I can prevent any package scans and include my 
configuration factory via a system property (as a specific class -- not a 
package that requires jar scans), then that's all I really need.

> jar scanning for plugins too expensive and called too many times
> ----------------------------------------------------------------
>
>                 Key: LOG4J2-798
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-798
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.0.1, 2.0.2
>         Environment: modern hardware, fat jar
>            Reporter: Ian Barfield
>
> related to: [https://issues.apache.org/jira/browse/LOG4J2-741]
> It takes about 3 seconds to perform {{PluginManager.collectPlugins()}} and it 
> appears to run 4 times before log4j2 is done initializing. That is pretty not 
> okay. Please consider making the plugin discovery method configurable and/or 
> curtailing the redundant calls.
> My application jar uses the maven shade plugin. I do not specify a 'packages' 
> attribute. I do use a custom plugin (a configuration factory), but I excluded 
> the resultant plugin dat file created for it and specify its usage at runtime 
> via the appropriate system property.
> My suggestion for the easiest fix is to use the pre-computed plugin list and 
> optionally (maybe even enabled by default) also scan the class path for 
> custom plugins.
> Some nice extras would be:
> - removing the redundant {{collectPlugins()}} calls
> - using a plugin dat file format that is both human friendly and amenable to 
> append operations so that users of the maven shade plugin and users who 
> struggle with annotation processors can easily include custom plugins. See 
> [https://github.com/addthis/codec] for an example of such a plugin system/ 
> file format that is based on hocon.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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

Reply via email to