[ https://issues.apache.org/jira/browse/LOG4J2-245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13652908#comment-13652908 ]
Nick Williams commented on LOG4J2-245: -------------------------------------- Unfortunately, I cannot easily test the modification because of the environment I'm running in. I'm stuck with what's in Maven repositories. However, I think we have a bigger problem... It is now happening without JCL. ANY time I log a Throwable I'm getting the following ESE. This is a change from a few weeks ago. Also, I set status="DEBUG" and its output is below the ESE. I do not see "sun.reflect.Reflection is not installed" or "Unable to install security manager," but I DO see "Jansi is not installed." Even if your modification DID work (again, I can't test it), all exceptions logged would be missing data in their stack trace it appears. java.util.EmptyStackException at java.util.Stack.peek(Stack.java:102) at org.apache.logging.log4j.core.impl.ThrowableProxy.resolvePackageData(ThrowableProxy.java:339) at org.apache.logging.log4j.core.impl.ThrowableProxy.<init>(ThrowableProxy.java:71) at org.apache.logging.log4j.core.impl.Log4jLogEvent.<init>(Log4jLogEvent.java:110) at org.apache.logging.log4j.core.impl.Log4jLogEvent.<init>(Log4jLogEvent.java:81) at org.apache.logging.log4j.core.config.LoggerConfig.createEvent(LoggerConfig.java:423) at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:344) at org.apache.logging.log4j.core.Logger.log(Logger.java:110) at org.apache.logging.log4j.spi.AbstractLogger.error(AbstractLogger.java:576) at com.wrox.config.Bootstrap.onStartup(Bootstrap.java:21) at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:180) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5199) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:698) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1056) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1610) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) 2013-05-09 07:26:03,309 DEBUG Generated plugins in 0.000018300 seconds 2013-05-09 07:26:03,310 DEBUG Generated plugins in 0.000012200 seconds 2013-05-09 07:26:03,311 DEBUG Generated plugins in 0.000014800 seconds 2013-05-09 07:26:03,312 DEBUG Generated plugins in 0.000012100 seconds 2013-05-09 07:26:03,313 DEBUG Generated plugins in 0.000025000 seconds 2013-05-09 07:26:03,313 DEBUG Generated plugins in 0.000012800 seconds 2013-05-09 07:26:03,314 DEBUG Generated plugins in 0.000011900 seconds 2013-05-09 07:26:03,315 DEBUG Generated plugins in 0.000012500 seconds 2013-05-09 07:26:03,316 DEBUG Generated plugins in 0.000015100 seconds 2013-05-09 07:26:03,318 DEBUG Generated plugins in 0.000018200 seconds 2013-05-09 07:26:03,319 DEBUG Generated plugins in 0.000015500 seconds 2013-05-09 07:26:03,320 DEBUG Generated plugins in 0.000015600 seconds 2013-05-09 07:26:03,320 DEBUG Generated plugins in 0.000013400 seconds 2013-05-09 07:26:03,321 DEBUG Generated plugins in 0.000013100 seconds 2013-05-09 07:26:03,322 DEBUG Generated plugins in 0.000013600 seconds 2013-05-09 07:26:03,323 DEBUG Generated plugins in 0.000012100 seconds 2013-05-09 07:26:03,334 DEBUG Calling createLayout on class org.apache.logging.log4j.core.layout.PatternLayout for element PatternLayout with params(pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n", Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml), null, charset="null") 2013-05-09 07:26:03,335 DEBUG Generated plugins in 0.000031700 seconds 2013-05-09 07:26:03,337 DEBUG Calling createAppender on class org.apache.logging.log4j.core.appender.ConsoleAppender for element Console with params(PatternLayout(%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n), null, target="SYSTEM_OUT", name="Console", follow="null", suppressExceptions="null") 2013-05-09 07:26:03,339 DEBUG Jansi is not installed 2013-05-09 07:26:03,340 DEBUG Calling createLayout on class org.apache.logging.log4j.core.layout.PatternLayout for element PatternLayout with params(pattern="%d{HH:mm:ss.SSS} [%t] %X{id} %X{username} %-5level %c{36} %l: %msg%n", Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml), null, charset="null") 2013-05-09 07:26:03,341 DEBUG Calling createPolicy on class org.apache.logging.log4j.core.appender.rolling.SizeBasedTriggeringPolicy for element SizeBasedTriggeringPolicy with params(size="10 MB") 2013-05-09 07:26:03,343 DEBUG Calling createPolicy on class org.apache.logging.log4j.core.appender.rolling.CompositeTriggeringPolicy for element Policies with params(policies={SizeBasedTriggeringPolicy(size=10485760)}) 2013-05-09 07:26:03,344 DEBUG Calling createStrategy on class org.apache.logging.log4j.core.appender.rolling.DefaultRolloverStrategy for element DefaultRolloverStrategy with params(max="4", min="1", fileIndex="null", Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml)) 2013-05-09 07:26:03,346 DEBUG Calling createAppender on class org.apache.logging.log4j.core.appender.RollingFileAppender for element RollingFile with params(fileName="../logs/application.log", filePattern="../logs/application-%d{MM-dd-yyyy}-%i.log", append="null", name="WroxFileAppender", bufferedIO="null", immediateFlush="null", Policies(CompositeTriggeringPolicy{SizeBasedTriggeringPolicy(size=10485760)}), DefaultRolloverStrategy(DefaultRolloverStrategy(min=1, max=4)), PatternLayout(%d{HH:mm:ss.SSS} [%t] %X{id} %X{username} %-5level %c{36} %l: %msg%n),null, suppressExceptions="null", advertise="null", advertiseURI="null", Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml)) 2013-05-09 07:26:03,350 DEBUG Starting RollingFileManager ../logs/application.log 2013-05-09 07:26:03,353 DEBUG Generated plugins in 0.000017900 seconds 2013-05-09 07:26:03,355 DEBUG Calling createAppenders on class org.apache.logging.log4j.core.config.plugins.AppendersPlugin for element appenders with params(appenders={Console, WroxFileAppender}) 2013-05-09 07:26:03,356 DEBUG Generated plugins in 0.000026800 seconds 2013-05-09 07:26:03,358 DEBUG Calling createAppenderRef on class org.apache.logging.log4j.core.config.AppenderRef for element appender-ref with params(ref="Console", level="null", null) 2013-05-09 07:26:03,360 DEBUG Calling createAppenderRef on class org.apache.logging.log4j.core.config.AppenderRef for element appender-ref with params(ref="WroxFileAppender", level="null", null) 2013-05-09 07:26:03,362 DEBUG Calling createLogger on class org.apache.logging.log4j.core.config.LoggerConfig$RootLogger for element root with params(additivity="null", level="warn", includeLocation="null", appender-ref={org.apache.logging.log4j.core.config.AppenderRef@39f14d85, org.apache.logging.log4j.core.config.AppenderRef@15fc1bda}, properties={}, Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml), null) 2013-05-09 07:26:03,364 DEBUG Calling createLogger on class org.apache.logging.log4j.core.config.LoggerConfig for element logger with params(additivity="null",level="info", name="com.wrox", includeLocation="null", appender-ref={}, properties={}, Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml), null) 2013-05-09 07:26:03,366 DEBUG Calling createLogger on class org.apache.logging.log4j.core.config.LoggerConfig for element logger with params(additivity="null",level="info", name="org.apache", includeLocation="null", appender-ref={}, properties={}, Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml), null) 2013-05-09 07:26:03,370 DEBUG Calling createLogger on class org.apache.logging.log4j.core.config.LoggerConfig for element logger with params(additivity="null",level="info", name="org.springframework", includeLocation="null", appender-ref={}, properties={}, Configuration(C:\Program Files\Apache Software Foundation\Tomcat 8.0\webapps\java\WEB-INF\classes\log4j2.xml), null) 2013-05-09 07:26:03,372 DEBUG Calling createLoggers on class org.apache.logging.log4j.core.config.plugins.LoggersPlugin for element loggers with params(loggers={root, com.wrox, org.apache, org.springframework}) 2013-05-09 07:26:03,375 DEBUG Reconfiguration completed > EmptyStackException when logging error through JCL bridge > --------------------------------------------------------- > > Key: LOG4J2-245 > URL: https://issues.apache.org/jira/browse/LOG4J2-245 > Project: Log4j 2 > Issue Type: Bug > Components: Core, JCL Bridge > Affects Versions: 2.0-beta5, 2.0-beta6 > Reporter: Nick Williams > Priority: Blocker > > Possibly affects earlier versions, too, but I did not check. > beta5 and beta6 are both unusable with Spring Framework. Any time an error > gets logged through log4j-jcl bridge using Spring, the error below appears in > the Tomcat log, masking the error that Spring was trying to log and making it > very difficult to figure out what happened. I've also included my > configuration file below the stack trace. The root error is happening on > Tomcat 6 due to Spring bug, and that root problem is unimportant. The > important problem is the Log4j error that masks it. > SEVERE: Exception sending context initialized event to listener instance of > class org.springframework.web.context.ContextLoaderListener > java.util.EmptyStackException > at java.util.Stack.peek(Stack.java:102) > at > org.apache.logging.log4j.core.impl.ThrowableProxy.resolvePackageData(ThrowableProxy.java:339) > at > org.apache.logging.log4j.core.impl.ThrowableProxy.<init>(ThrowableProxy.java:71) > at > org.apache.logging.log4j.core.impl.Log4jLogEvent.<init>(Log4jLogEvent.java:110) > at > org.apache.logging.log4j.core.impl.Log4jLogEvent.<init>(Log4jLogEvent.java:81) > at > org.apache.logging.log4j.core.config.LoggerConfig.createEvent(LoggerConfig.java:423) > at > org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:344) > at org.apache.logging.log4j.core.Logger.log(Logger.java:110) > at > org.apache.logging.log4j.spi.AbstractLoggerWrapper.log(AbstractLoggerWrapper.java:55) > at > org.apache.logging.log4j.spi.AbstractLogger.error(AbstractLogger.java:539) > at > org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:319) > at > org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112) > at > org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4765) > at > org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5210) > at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) > at > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726) > at > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:702) > at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:698) > at > org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1491) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:491) > at > org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) > at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) > at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792) > at > org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:468) > at > org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:415) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:491) > at > org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300) > at > com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819) > at > com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:792) > at > javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1465) > at > javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:75) > at > javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1306) > at > javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1398) > at > javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:827) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:491) > at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322) > at sun.rmi.transport.Transport$1.run(Transport.java:177) > at sun.rmi.transport.Transport$1.run(Transport.java:174) > at java.security.AccessController.doPrivileged(Native Method) > at sun.rmi.transport.Transport.serviceCall(Transport.java:173) > at > sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:556) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:811) > at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:670) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:724) > <?xml version="1.0" encoding="UTF-8"?> > <configuration status="WARN"> > <appenders> > <Console name="Console" target="SYSTEM_OUT"> > <PatternLayout > pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - > %msg%n"/> > </Console> > <RollingFile name="WroxFileAppender" > fileName="../logs/application.log" > filePattern="../logs/application-%d{MM-dd-yyyy}-%i.log"> > <PatternLayout> > <pattern>%d{HH:mm:ss.SSS} [%t] %X{id} %X{username} %-5level > %c{36} %l: %msg%n</pattern> > </PatternLayout> > <Policies> > <SizeBasedTriggeringPolicy size="10 MB" /> > </Policies> > <DefaultRolloverStrategy min="1" max="4" /> > </RollingFile> > </appenders> > <loggers> > <root level="warn"> > <appender-ref ref="Console" /> > <appender-ref ref="WroxFileAppender" /> > </root> > <logger name="com.wrox" level="info" /> > <logger name="org.apache" level="info" /> > <logger name="org.springframework" level="info" /> > </loggers> > </configuration> -- 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: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org