Running psi probe on tomcat 5.5

182 views
Skip to first unread message

techotaku

unread,
Sep 6, 2011, 10:19:06 PM9/6/11
to psi-probe-discuss
Hey,

We recently installed psi-probe on tomcat 5.5--everything looks good
but we're getting this error regarding log4j:

2011-09-07 01:31:11,694 ERROR
[com.googlecode.psiprobe.tools.logging.log4j.Log4JLoggerAccessor] -
org.apache....@110d68a.getAllAppenders() failed
java.lang.NoSuchMethodException: No such accessible method:
getAllAppenders() on object: org.apache.log4j.Logger

I tried placing log4j-1.2.16.jar in /common/lib in both home and base
with no luck. Anyone know what's going on? What am I missing?

Thanks

Mark

unread,
Sep 7, 2011, 12:22:17 AM9/7/11
to psi-prob...@googlegroups.com
What version of PSI Probe?

There should have been a stack trace with that error.  Can you include it too?

techotaku

unread,
Sep 20, 2011, 6:03:43 PM9/20/11
to psi-probe-discuss
Thanks for the response.

PSI Probe v2.2.3

2011-09-20 21:59:18,792 ERROR
[com.googlecode.psiprobe.tools.logging.log4j.Log4JLoggerAccessor] -
org.apache....@14eff86.getAllAppenders() failed
java.lang.NoSuchMethodException: No such accessible method:
getAllAppenders() on object: org.apache.log4j.Logger
at
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:
214)
at
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:
162)
at
com.googlecode.psiprobe.tools.logging.log4j.Log4JLoggerAccessor.getAppenders(Log4JLoggerAccessor.java:
26)
at
com.googlecode.psiprobe.tools.logging.log4j.Log4JManagerAccessor.getAppenders(Log4JManagerAccessor.java:
73)
at
com.googlecode.psiprobe.beans.LogResolverBean.interrogateClassLoader(LogResolverBean.java:
260)
at
com.googlecode.psiprobe.beans.LogResolverBean.interrogateApplicationClassLoaders(LogResolverBean.java:
235)
at
com.googlecode.psiprobe.beans.LogResolverBean.getAllLogDestinations(LogResolverBean.java:
143)
at
com.googlecode.psiprobe.beans.LogResolverBean.getLogSources(LogResolverBean.java:
106)
at
com.googlecode.psiprobe.beans.LogResolverBean.getLogSources(LogResolverBean.java:
93)
at
com.googlecode.psiprobe.controllers.logs.SetupFollowController.handleLogFile(SetupFollowController.java:
24)
at
com.googlecode.psiprobe.controllers.logs.LogHandlerController.handleRequestInternal(LogHandlerController.java:
50)
at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:
153)
at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:
48)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:
875)
at com.googlecode.psiprobe.ProbeServlet.doDispatch(ProbeServlet.java:
53)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:
807)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:
571)
at
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:
501)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
269)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
188)
at
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:
118)
at
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:
52)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
188)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
172)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
525)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
127)
at
com.googlecode.psiprobe.Tomcat55AgentValve.invoke(Tomcat55AgentValve.java:
30)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
117)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
108)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
174)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:
200)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:
704)
at org.apache.jk.common.ChannelSocket
$SocketConnection.runIt(ChannelSocket.java:897)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:595)
2011-09-20 21:59:18,794 ERROR
[com.googlecode.psiprobe.tools.logging.log4j.Log4JManagerAccessor] -
class org.apache.log4j.LogManager.getCurrentLoggers() failed
java.lang.NullPointerException: null
at
com.googlecode.psiprobe.tools.logging.log4j.Log4JManagerAccessor.getAppenders(Log4JManagerAccessor.java:
77)
at
com.googlecode.psiprobe.beans.LogResolverBean.interrogateClassLoader(LogResolverBean.java:
260)
at
com.googlecode.psiprobe.beans.LogResolverBean.interrogateApplicationClassLoaders(LogResolverBean.java:
235)
at
com.googlecode.psiprobe.beans.LogResolverBean.getAllLogDestinations(LogResolverBean.java:
143)
at
com.googlecode.psiprobe.beans.LogResolverBean.getLogSources(LogResolverBean.java:
106)
at
com.googlecode.psiprobe.beans.LogResolverBean.getLogSources(LogResolverBean.java:
93)
at
com.googlecode.psiprobe.controllers.logs.SetupFollowController.handleLogFile(SetupFollowController.java:
24)
at
com.googlecode.psiprobe.controllers.logs.LogHandlerController.handleRequestInternal(LogHandlerController.java:
50)
at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:
153)
at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:
48)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:
875)
at com.googlecode.psiprobe.ProbeServlet.doDispatch(ProbeServlet.java:
53)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:
807)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:
571)
at
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:
501)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
269)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
188)
at
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:
118)
at
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:
52)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
215)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
188)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
172)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
525)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
127)
at
com.googlecode.psiprobe.Tomcat55AgentValve.invoke(Tomcat55AgentValve.java:
30)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
117)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
108)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
174)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:
200)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:
704)
at org.apache.jk.common.ChannelSocket
$SocketConnection.runIt(ChannelSocket.java:897)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:595)

Mark

unread,
Sep 21, 2011, 12:12:43 PM9/21/11
to psi-prob...@googlegroups.com
That method clearly exists in log4j 1.2.16.  I see a second error there too, a NPE, which traces back to another method that couldn't be found.  I'm baffled.

It looks like you were trying to view the contents of a log file when this error came up.  This action scans through all the logs, so it may be an issue with another app on the same server.  I assume the contents of the log file came up in Probe as expected, but can you describe what you did leading up to this error and Probe's behavior in more detail?  Thanks.

techotaku

unread,
Sep 21, 2011, 1:10:23 PM9/21/11
to psi-probe-discuss
Thanks, Mark.

We're getting this error in the logback log for our application. I'm
viewing the log at
/probe/logs/follow.htm?logType=logback&webapp=
%2f<APPNAME>&root=true&logIndex=FILE

The errors are added to the log every time that page is refreshed.

Mark

unread,
Sep 22, 2011, 2:45:09 PM9/22/11
to psi-prob...@googlegroups.com
Ok, I'm getting an idea of what might be happening.  Logback is the front-end, but are you using log4j on the backend?  If so, Probe is probably seeing your log4j-over-slf4j bridge as log4j, which is a bug.

Can you confirm that Probe correctly displays the log's contents despite the error?

techotaku

unread,
Sep 22, 2011, 3:10:05 PM9/22/11
to psi-probe-discuss
Thanks again. We're using slf4j, actually. And yeah, the log
correctly displays the expected content despite the error.

Mark

unread,
Sep 23, 2011, 12:04:45 PM9/23/11
to psi-prob...@googlegroups.com
Thanks for your help diagnosing this.  I've filed it as issue 248, and it should be fixed in the next release.

Mark

unread,
Sep 23, 2011, 6:48:14 PM9/23/11
to psi-prob...@googlegroups.com
Can I send you a snapshot build to test?  If so, please email me, and I will reply with the build.
Reply all
Reply to author
Forward
0 new messages