[ https://issues.apache.org/jira/browse/GEODE-8197?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17132790#comment-17132790 ]
ASF subversion and git services commented on GEODE-8197: -------------------------------------------------------- Commit 3a2cf76b77be63f2a67df1901fe5b588cdc2c94a in geode's branch refs/heads/develop from Kirk Lund [ https://gitbox.apache.org/repos/asf?p=geode.git;h=3a2cf76 ] GEODE-8197: Add launcher acceptance tests for custom logging config (#5196) > Embedded Pulse fails to start with custom log4j2.xml > ---------------------------------------------------- > > Key: GEODE-8197 > URL: https://issues.apache.org/jira/browse/GEODE-8197 > Project: Geode > Issue Type: Bug > Components: logging, pulse > Reporter: Kirk Lund > Assignee: Kirk Lund > Priority: Major > Labels: GeodeOperationAPI > > Starting a Locator with a custom log4j2.xml referencing Geode appenders or > converters fails to correctly start embedded Pulse web application. > {noformat} > [info 2020/05/28 10:51:51.954 PDT <main> tid=1] Adding webapp /pulse > 2020-05-28 10:51:53,328 main ERROR Unable to invoke factory method in class > org.apache.geode.alerting.log4j.internal.impl.AlertAppender for element > GeodeAlert: java.lang.IllegalStateException: No factory method found for > class org.apache.geode.alerting.log4j.internal.impl.AlertAppender > java.lang.IllegalStateException: No factory method found for class > org.apache.geode.alerting.log4j.internal.impl.AlertAppender > at > org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234) > at > org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241) > at > org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288) > at > org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:618) > at > org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:691) > at > org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:708) > at > org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:263) > at > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153) > at > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45) > at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194) > at > org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138) > at > org.apache.logging.log4j.jcl.LogAdapter.getContext(LogAdapter.java:39) > at > org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48) > at > org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:40) > at > org.apache.logging.log4j.jcl.LogFactoryImpl.getInstance(LogFactoryImpl.java:55) > at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:655) > at > org.springframework.web.filter.GenericFilterBean.<init>(GenericFilterBean.java:86) > at > org.springframework.web.filter.DelegatingFilterProxy.<init>(DelegatingFilterProxy.java:107) > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:423) > at > org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2520) > at > org.eclipse.jetty.servlet.ServletContextHandler$Context.createFilter(ServletContextHandler.java:1284) > at > org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:118) > at > org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:751) > at > java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948) > at > java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742) > at > java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:742) > at > java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) > at > org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:744) > at > org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:361) > at > org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1443) > at > org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1407) > at > org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:821) > at > org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:276) > at > org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524) > at > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72) > at > org.apache.geode.internal.cache.InternalHttpService.addWebApplication(InternalHttpService.java:211) > at > org.apache.geode.management.internal.ManagementAgent.loadWebApplications(ManagementAgent.java:248) > at > org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:133) > at > org.apache.geode.management.internal.SystemManagementService.startManager(SystemManagementService.java:375) > at > org.apache.geode.distributed.internal.InternalLocator.lambda$startClusterManagementService$3(InternalLocator.java:826) > at java.util.Optional.ifPresent(Optional.java:159) > at > org.apache.geode.distributed.internal.InternalLocator.startClusterManagementService(InternalLocator.java:817) > at > org.apache.geode.distributed.internal.InternalLocator.startClusterManagementService(InternalLocator.java:783) > at > org.apache.geode.distributed.internal.InternalLocator.startCache(InternalLocator.java:776) > at > org.apache.geode.distributed.internal.InternalLocator.startDistributedSystem(InternalLocator.java:757) > at > org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:388) > at > org.apache.geode.distributed.LocatorLauncher.start(LocatorLauncher.java:716) > at > org.apache.geode.distributed.LocatorLauncher.run(LocatorLauncher.java:623) > at > org.apache.geode.distributed.LocatorLauncher.main(LocatorLauncher.java:217) > 2020-05-28 10:51:53,331 main ERROR appenders Appenders has no parameter that > matches element GeodeAlert > 2020-05-28 10:51:53,344 main ERROR Unable to locate appender "ALERT" for > logger config "root" > [info 2020/05/28 10:51:53.404 PDT <main> tid=1] Initializing Servlet 'pulse' > {noformat} -- This message was sent by Atlassian Jira (v8.3.4#803005)