SonarQube 7.7 Missing Compute Engine JMX mBean

  • Version 7.7.0.23042 Enterprise Edition

We are currently using JMX mbeans to monitor our service, and outputting them onto our SignalFX dashboard. The documentation says that we should be able to find the ComputeEngineTasks MBean with attributes such as Processing time, success count, etc., but we are unable to find it. When we dumped out all our MBeans, the only SonarQube mbeans we found were:
SonarQube:name=SonarQube
SonarQube:name=AsyncExecution
SonarQube:name=Database
How can we get the ComputeEngineTasks MBean to show up?

Just adding more information to our problem, but when we dump all the metrics being monitored by the SonarQube:name=AsyncExecution, we only get this:
{
“WorkerCount” : 0,
“LargestWorkerCount” : 0,
“QueueSize” : 0
}
I’m assuming that these numbers are not right, and would like to get these correct values as well for our SignalFX dashboard.

Hello,

You are looking at the MBeans exposed by the WebServer process.

You will find the documented MBeans on the Compute Engine Java process.

Cheers,

2 Likes

Hello,

Yes, you were right! As soon as we exposed the MBean for the Compute Engine process in the sonar.properties file, we were able to see all the metrics for it. Thanks a lot!!!

Hello @klee @sns-seb
I am also facing the same issue. I am using community edition 8.4. Could you please explain what do you mean by

exposed the MBean for the Compute Engine process in the sonar.properties file

I tried below settings one by one. But it didn’t work.

#sonar.ce.javaAdditionalOpts=-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.port=10443 -Dcom.sun.management.jmxremote.rmi.port=10444 -Dcom.sun.management.jmxremote.password.file=/home/udocker/sonarqube-8.4.2.36762/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/home/udocker/sonarqube-8.4.2.36762/conf/jmxremote.access
sonar.ce.javaAdditionalOpts=-Dcom.sun.management.jmxremote=true

Hello @Anuj_Kumar,

As per documentation (which is not super clear, I agree), there is no sonar.ce.javaAdditionalOpts and you should use sonar.ce.javaOpts.

Have you tried that?

Cheers,

I tried like this:

sonar.ce.javaOpts=-Dcom.sun.management.jmxremote=true

and restart the sonarqube server. still Compute engine Beans is missing in jconsole.
Am i missing any setting ?

Hi @klee , I am trying to do something similar. Once we do the configuration required for exposing jmx ports for both web and compute engine. I am able to see Mbeans for both through Jconsole.
After that, Can you help me with how are you sending this to Signalfx. Are you using jmx integration something like this?