logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matt Sicker (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LOG4J2-1320) Custom plugins are not loaded, URL protocol vfs is not supported
Date Wed, 14 Sep 2016 15:27:22 GMT

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

Matt Sicker commented on LOG4J2-1320:
-------------------------------------

Thanks for the verification!

> Custom plugins are not loaded, URL protocol vfs is not supported
> ----------------------------------------------------------------
>
>                 Key: LOG4J2-1320
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1320
>             Project: Log4j 2
>          Issue Type: Bug
>    Affects Versions: 2.5, 2.6.2
>            Reporter: Paresh Varke
>            Assignee: Gary Gregory
>             Fix For: 2.7
>
>         Attachments: LOG4J2-1320-2.patch, LOG4J2-1320-3.patch, LOG4J2-1320-testcase-cleanFoldersRule.patch,
LOG4J2-1320.patch, test-jee-plugins-logging-parent.zip
>
>
> The URL protocol "vfs" from using a class loader is not supported; for example within
JBoss EAP 6.2 and Log4j2 version 2.5. The custom plugin {{packages}} attribute fails to be
resolve and plugin are not loaded for following URLs:
> {code}
> vfs:/C:/jboss/jboss-eap-6.4/standalone/deployments/com.xxx.yyy.application-ear.ear/lib/com.xxx.yyy.logging.jar/com/xxx/yyy/logging/config/
> vfs:/C:/jboss/jboss-eap-6.4/standalone/deployments/test-log4j2-web-standalone.war/WEB-INF/classes/org/hypik/test/jboss/eap7/logging/config/
> vfs:/content/mycustomweb.war/WEB-INF/classes/org/hypik/test/jboss/log4j2/logging/pluginweb/
> vfs:/content/test-log4k2-ear.ear/lib/test-log4j2-jar-plugins.jar/org/hypik/test/jboss/log4j2/pluginjar/
> vfs:/content/myapp.ear/service-app.war/WEB-INF/classes/com/logging/appender/log4j2/
> {code}
> Example of configuration:
> {code:xml}
> <Configuration status="INFO" name="MyConf" packages="com.logging.appender.log4j2">
> {code}
> It results following errors from {{StatusLogger}}:
> {quote}
> Could not search jar file '/content/myapp.ear/service-app.war/WEB-INF/classes/com/logging/appender/log4j2'
for classes matching criteria: annotated with @Plugin file not found java.io.FileNotFoundException:
/content/myapp.ear/service-app.war/WEB-INF/classes/com/logging/appender/log4j2 (No such file
or directory).
> {quote}
> And related logs:
> {code}
> 2016-03-10 07:08:41,909 INFO  [stdout] (ServerService Thread Pool -- 275) INFO Scanning
for classes in [/content/myapp.ear/service-app.war/WEB-INF/classes/com/logging/appender/log4j2/]
matching criteria: annotated with @Plugin
> 2016-03-10 07:08:41,910 INFO  [stdout] (ServerService Thread Pool -- 275) 2016-03-10
07:08:41,909 ServerService Thread Pool -- 275 ERROR Could not search jar file '/content/myapp.ear/service-app.war/WEB-INF/classes/com/logging/appender/log4j2'
for classes matching criteria: annotated with @Plugin file not found java.io.FileNotFoundException:
/content/myapp.ear/service-app.war/WEB-INF/classes/com/logging/appender/log4j2 (No such file
or directory)
> 2016-03-10 07:08:41,910 INFO  [stdout] (ServerService Thread Pool -- 275) 	at java.io.FileInputStream.open(Native
Method)
> 2016-03-10 07:08:41,910 INFO  [stdout] (ServerService Thread Pool -- 275) 	at java.io.FileInputStream.<init>(FileInputStream.java:146)
> 2016-03-10 07:08:41,910 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.config.plugins.util.ResolverUtil.loadImplementationsInJar(ResolverUtil.java:310)
> 2016-03-10 07:08:41,910 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.config.plugins.util.ResolverUtil.findInPackage(ResolverUtil.java:206)
> 2016-03-10 07:08:41,910 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.config.plugins.util.PluginRegistry.loadFromPackage(PluginRegistry.java:222)
> 2016-03-10 07:08:41,911 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.config.plugins.util.PluginManager.collectPlugins(PluginManager.java:152)
> 2016-03-10 07:08:41,911 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:180)
> 2016-03-10 07:08:41,911 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:209)
> 2016-03-10 07:08:41,911 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:492)
> 2016-03-10 07:08:41,911 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:246)
> 2016-03-10 07:08:41,911 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:232)
> 2016-03-10 07:08:41,911 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.core.config.Configurator.initialize(Configurator.java:140)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.web.Log4jWebInitializerImpl.initializeNonJndi(Log4jWebInitializerImpl.java:168)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.web.Log4jWebInitializerImpl.start(Log4jWebInitializerImpl.java:110)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.logging.log4j.web.Log4jServletContainerInitializer.onStartup(Log4jServletContainerInitializer.java:57)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.jboss.as.web.deployment.JBossContextConfig.lifecycleEvent(JBossContextConfig.java:181)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:115)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.apache.catalina.core.StandardContext.start(StandardContext.java:3772)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.jboss.as.web.deployment.WebDeploymentService.doStart(WebDeploymentService.java:156)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.jboss.as.web.deployment.WebDeploymentService.access$000(WebDeploymentService.java:60)
> 2016-03-10 07:08:41,915 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.jboss.as.web.deployment.WebDeploymentService$1.run(WebDeploymentService.java:93)
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 	at java.lang.Thread.run(Thread.java:744)
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 	at org.jboss.threads.JBossThread.run(JBossThread.java:122)
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 
> 2016-03-10 07:08:41,916 INFO  [stdout] (ServerService Thread Pool -- 275) 2016-03-10
07:08:41,916 ServerService Thread Pool -- 275 DEBUG Took 0.011828 seconds to load 0 plugins
from package com.logging.appender.log4j2
> {code}
> By debugging I found in the method {{findInPackage}} in class {{ResolverUtil}}, class
loader prepares enum of url (urls = loader.getResources(packageName)).
> And gives:
> {noformat}
> /content/myapp.ear/service-app.war/WEB-INF/classes/com/logging/appender/log4j2
> {noformat}
> as the value of urlPath (which is non existing path).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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


Mime
View raw message