logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scott Harrington (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LOG4J2-798) jar scanning for plugins too expensive and called too many times
Date Tue, 26 Aug 2014 13:33:59 GMT

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

Scott Harrington commented on LOG4J2-798:

I posted a patch at LOG4J2-745 that improves and documents the plugin loading. Matt reviewed
it but has not checked it in.

I am 90% sure my code would fix Ian's problem.

> 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

To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org

View raw message