Javamelody with any other RRD tools possible instead of jrobin

177 views
Skip to first unread message

sake...@gmail.com

unread,
Jan 28, 2020, 6:11:51 AM1/28/20
to javamelody
Hello,
I'm trying to use java melody as monitoring in my application,with aspect of security we are not able to use the Jrobin jar instead can i use other rrd tools available.

I tried it replacing the jrobin with rrd4.jar ,but it throws RRDException as below

ava.lang.NoClassDefFoundError: org/jrobin/core/RrdException
      at net.bull.javamelody.internal.model.Collector.getCounterJRobin(Collector.java:911)
      at net.bull.javamelody.internal.model.Collector.collectJRobinValues(Collector.java:560)
      at net.bull.javamelody.internal.model.Collector.collectJavaInformations(Collector.java:422)
      at net.bull.javamelody.internal.model.Collector.collect(Collector.java:350)
      at net.bull.javamelody.internal.model.Collector.collectWithoutErrors(Collector.java:329)
      at net.bull.javamelody.internal.model.Collector.collectLocalContextWithoutErrors(Collector.java:318)
      at net.bull.javamelody.internal.web.HtmlController.doHtml(HtmlController.java:95)
      at net.bull.javamelody.internal.web.MonitoringController.doCompressedHtml(MonitoringController.java:283)
      at net.bull.javamelody.internal.web.MonitoringController.doReportCore(MonitoringController.java:230)
      at net.bull.javamelody.internal.web.MonitoringController.doReport(MonitoringController.java:209)
      at net.bull.javamelody.internal.web.MonitoringController.doActionIfNeededAndReport(MonitoringController.java:163)
      at net.bull.javamelody.MonitoringFilter.doMonitoring(MonitoringFilter.java:408)
      at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
      at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
      at com.lhs.ccb.cfw.wcs.security.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:138)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
      at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:199)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:475)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
      at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:498)
      at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
      at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:796)
      at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1366)
      at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      at java.lang.Thread.run(Thread.java:748)

Any other RRD tool compatible with javamelody to display the graphs or any option to configure external RRD tool apart from jrobin.

Please suggest.

Emeric Vernat

unread,
Jan 29, 2020, 12:13:28 PM1/29/20
to javamelody
Hi sakeeachu,

javamelody is written to work with jrobin 1.5.9.
It can't work with rrd4j (or any other). Rrd4j is a fork of jrobin but rrd4j classes are not binary compatible with jrobin classes.

bye,
Emeric

Escuela Technologies

unread,
Jul 7, 2022, 6:23:11 AM7/7/22
to javamelody
We are getting the class not found exception in tomcat 9 

        ... 32 more
06-Jul-2022 14:17:51.308 WARNING [http-nio-8080-exec-5] net.bull.javamelody.internal.common.JavaLogger.warn exception while collecting data: java.lang.NoClassDefFoundError: org/jrobin/core/RrdException
    java.lang.NoClassDefFoundError: org/jrobin/core/RrdException
        at net.bull.javamelody.internal.model.Collector.getCounterJRobin(Collector.java:916)

What is the fix for this ?

evernat

unread,
Jul 7, 2022, 6:40:47 AM7/7/22
to javamelody
Hi,

You probably need to include the jrobin jar file as a dependency in your webapp:

This is done automatically when using maven and one of the javamelody dependency.

bye,
Emeric
Reply all
Reply to author
Forward
0 new messages