New: VisualVM Plugin for Coherence - released through the Coherence Incubator
By tmiddlet on Dec 05, 2013
We are excited to announce the availability of the Coherence VisualVM developer plug-in which is part of the new Coherence Incubator 12.1.0 release.
The community plug-in allows developers to view summarised Coherence related statistics and information when connected to a JMX enabled Coherence cluster. Information is collected and summarised from the various Coherence MBeans and displayed in a tabular and graphical format. You also have the ability to select various services and caches to display more detailed node level information about each.
Once installed you will see an additional 'Coherence' tab, when you connect to your Coherence process which is running an MBean server. If you select of this tab, a 'Cluster Summary' tab will be displayed.
The number of sub-tabs displayed varies depending upon what features you are using, but can include:
- Cluster Overview - High-level information about the Coherence cluster including cluster name, version, member count and 'Cluster StatusHA'. Summary graphs show total cluster memory available and used, packet publisher and receiver success rates and load averages for machines running Coherence.
- Machines - A list of the physical machines that make up the Coherence cluster as well as information about the load averages and available memory on these machines.
- Members - The full list of Coherence members/nodes, including individual publisher/receiver success rates, memory and send queue sizes.
- Services - Information about the running services including partition counts and statusHA values. If you select a service, on the next data refresh you will see detailed thread information for each node of the service as well as graphs of that information.
- Caches - Displays information about any caches, including their size and memory usage information. To get the correct information to be displayed for memory usage, you must be using the binary unit-calculator. If you select a cache, on the next data refresh you will see detailed information about each node hosting that service and cache.
- Proxy Servers - If your cluster is running proxy servers, this tab displays information about the proxy servers and the number of connections across each proxy server and total connections. You also have the ability to include or exclude the NameService.
- Coherence*Web - If your cluster is configured for Coherence*Web, this tab displays information about the number of applications deployed, the number of HTTP sessions being stored as well as other information regarding session reaping.
A sample of the Members sub-tab is shown below, with visual clues - that are included on the various screens - to draw attention to potential issues.
The Services sub-tab below shows how to select an individual service and monitor detailed metrics, like as thread utilisation.
Getting the Plug-in
The plug-in is available from GitHub which hosts the source for the latest version of the Coherence Incubator (12.1.0). The Incubator uses the Common Development and Distribution License (CDDL) license and the documentation, which includes how to build and install the plug-in, can be found here.
A pre-built NetBeans Module (NBM) is available via search.maven.org or you can build as part of the Incubator above.
The VisualVM tool is available with any download of JDK 1.7 or at http://visualvm.java.net. The Coherence plug-in is designed to work with JDK 7 Update 40 and above.
If your cluster is running on an earlier version of Java, you can still use the latest JVisualVM and connect remotely to your cluster to view statistics.
Note: This is a developer tool for viewing information about a single cluster at a time. Other monitoring tools such as Oracle's Enterprise Manager or other 3rd party tools are suited for enterprise level monitoring, management and alerting.