50

I have a server application that has been instrumented using JMX so that it can be monitored in test and production environments. I wish to show the current value of some JMX exposed attributes as well as the long term trends in a graphical format.

What is the best or most commonly used JMX Console / Client

I have come across a number of possibilities but none have stood out as clear leader:

  • JConsole (comes with JDK but no graphical view)
  • JManage (does not look like much recent activity)
  • Panoptes (does not look like much recent activity)
  • MC4J (does not look like much recent activity)
  • JBoss JMXConsole (looks like this may for JBoss servers only)
  • Hyperic HQ (open source / communit edition and enterprise version)
  • Zenoss

Which ones are the market leaders?

What ones aren't on the list?

V G
  • 18,822
  • 6
  • 51
  • 89
Keith Lyall
  • 1,165
  • 2
  • 9
  • 8

6 Answers6

25

I would prefer using JConsole for application monitoring, and it does have graphical view. If you’re using JDK 5.0 or above then it’s the best. Please refer to this using jconsole page for more details.

I have been primarily using it for GC tuning and finding bottlenecks.

Gray
  • 115,027
  • 24
  • 293
  • 354
Vikas
  • 266
  • 2
  • 3
  • 1
    I did not appreciate that JConsole had a graphical view. If you right-click on any numerical attribute it will give you a time series chart where you can select over what time period you want to display. Very useful! What if you want to build a dashboard of charts pulled from a wide variety of different JMX attributes. What are the best JMX Consoles for this scenario? – Keith Lyall Nov 24 '09 at 11:22
  • In jvisualvm from Java 7 for *If you right-click on any numerical attribute it will give you a time series chart* I use double-click for chart and right click for prompt to save data in CSV file... – gavenkoa May 30 '13 at 11:59
  • @gavenkoa Could you give an example? I cannot locate where this works. – Thorbjørn Ravn Andersen Jun 09 '17 at 11:51
  • But Jmanage is great for enterprise applications, which can be configured for many services, just by injecting configuration in config.xml by adding application-cluster. Jmanage also support authentication layer. But it is not maintained any longer. Can someone suggest alternative for something similar? – YS_NE Feb 20 '22 at 03:55
23

JConsole has a graphical view.

You also have VisualVM and Oracle JRockit Mission Control

beechovsky
  • 133
  • 2
  • 17
Kire Haglin
  • 6,569
  • 22
  • 27
  • 10
    VisualVM is a superset replacement for JConsole (and jinfo, jmap, jstack, jstat). It is bundled with newer JVMs alongside jconsole - type 'jvisualvm'. Post about this: [From JConsole to VisualVM](http://marxsoftware.blogspot.com/2008/08/from-jconsole-to-visualvm.html) – Cincinnati Joe Apr 05 '11 at 17:24
4

JRockit Mission Control is becoming Java Mission Control and will be dedicated exclusively to Hotspot. If you are an Oracle customer, you can download the 5.x versions of Java Mission Control from MOS (My Oracle Support). Java Mission Control will eventually be released together with the Oracle JDK. The reason it is not yet generally available is that there are some serious limitations, especially when using the Flight Recorder. However, if you are only interested in using the JMX console, you should be golden!

Hirt
  • 1,664
  • 10
  • 12
4
Gray
  • 115,027
  • 24
  • 293
  • 354
luvieere
  • 37,065
  • 18
  • 127
  • 179
1

jminix is an embedded web based JMX console. Not sure if it's maintained any longer, but still.

Wilfred Springer
  • 10,869
  • 4
  • 55
  • 69
1

Alternatively, constructing a JMX console yourself doesn't need to be hard. Just plug in Jolokia and create a web page getting the attributes that you're interested in. Admittedly, it doesn't allow you to do trend analysis, but it does allow you to construct something that is really geared towards your purpose.

I constructed something in just a few lines: http://nxt.flotsam.nl/ears-and-eyes.html

Wilfred Springer
  • 10,869
  • 4
  • 55
  • 69