OMEGAMON for JVM on z/OS is the latest addition to the OMEGAMON Performance Management Suite of products1. The product provides continuous, real time monitoring of any JVM running on z/OS. It leverages the IBM JVM Health Center instrumentation that comes with every IBM JVM since V1.6.

Configuring the Health Center Agent for use with OMEGAMON

When it was first released in 2016, OMEGAMON for JVM required the latest version of Health Center available at the time (3.0.8). Version 540, released in January 2017 exploited advanced features of the Health Center API which were only available in V3.0.11 packaged only in the most up-to-date Service Releases of the Java SDK. Many customers have long maintenance cycles for their Enterprise Software, and IBM products that package copies of the SDK (such as WebSphere Application Server) may not contain the right level of Health Center for OMEGAMON. For that reason, OMEGAMON packages a copy of a compatible version of the Health Center Agent and API, which customers can use instead of the one in the System JVM. Enabling the IBM JVM supplied health Center Agent is usually done using the IBM JVM extended option -Xhealthcenter. The OMEGAMON for JVM Knowledge Center documents how the OMEGAMON-supplied Health Center Agent is used which is slightly more convoluted, requiring agentpath and -Xbootclasspath/p options. You also need to know the address mode of your JVM (31-bit or 64-bit) because there are different libraries for each JVM mode. For example, in a CICS JVM profile, you would have to add:

-agentpath:/rtehome/SYSA/kan/hca_64/bin/libhealthcenter.so=path=/HC308_64,level=inprocess,disableCH
-Xbootclasspath /p:/rtehome/SYSA/hca_64/lib/ext/healthcenter.jar
-javaagent:/ rtehome/SYSA/kan/bin/IBM/kjj.jar

Easier Configuration

A year on, most customers have upgraded their z/OS system Java SDKs to releases and service levels that contain Health Center instrumentation that is compatible with OMEGAMON for JVM. PTF UA95451 was published on March 23rd 2018, which now allows customers to use the Health Center Agent and API which comes with the Java SDK, simply by using the -Xhealthcenter option:
-Xhealthcenter:level=inprocess,disableCH -javaagent:/ rtehome/SYSA/kan/bin/IBM/kjj.jar

Not only is this a simpler way to configure the JVM, but customers can be assured that they are using the most recent Java-supplied version of the Health Center.

If you don’t know what version of Health Center comes with your copy of the JVM, then you can easily determine it. Locate the path to your JVM installation, and using the TSO OMVS command or a VT over Telnet terminal emulator to z/OS UNIX, start the JVM with the -Xhealthcenter:version option, like so:

/usr/lpp/java/J8.0/bin/java -Xhealthcenter:version

This will produce messages showing the version of the Health Center Agent:

Mar 29, 2018 10:22:53 AM com.ibm.java.diagnostics.healthcenter.agent.mbean.HCLaunchMBean
INFO: Agent version "3.0.11.20161017"

If the version of Health Center is at 3.0.11 or higher, you can safely use the Java-supplied copy, otherwise continue to use the OMEGAMON-supplied copy until your system JVM is updated.

Next Steps

Try OMEGAMON for JVM using the OMEGAMON for JVM Z Trial program (or any of the other available offerings in the Z Trial program). Go to www.ibm.biz/ibmztrial and you could be up and running within minutes.
To learn more about OMEGAMON for JVM visit the IBM Marketplace at https://www.ibm.com/us-en/marketplace/omegamon-for-jvm-on-zsystems

Join The Discussion

Your email address will not be published. Required fields are marked *