Skip to content

    Collecting data for performance issues using JMX statistics

    Merative ™ Social Program Management is now Cúram ™ by Merative™

    Collecting data for Merative ™ Social Program Management performance issues using JMX statistics

    Question & Answer

    Question

    How do you collect JMX Statistics in Merative Social Program Management? Collecting Merative Social Program Management JMX statistics before calling Merative support will help clarify the problem and save time analyzing the data.

    Answer

    Merative Social Program Management JMX performance files should be provided for all relevant application server or batch environments. For more information about Merative Social Program Management JMX statistics, see the Configuring Merative Social Program Management JMX topic of the documentation.

    Due to its low overhead and value in giving visibility to Merative Social Program Management performance data, it is recommended that JMX statistics are always enabled and monitored in production environments.

    Considerations for Running Merative Social Program Management JMX Statistics

    In terms of performance overhead, the only JMX feature that can have a significant impact on certain systems is JMX Transaction Tracing. Transaction tracing is off by default and should be used only when investigating issues, and only for a short period. It is controlled by the curam.jmx.transaction_tracing_enabled property.

    Merative SPM JMX Statistics Setup and Access

    See the Access to the JMX Statistics topic in the documentation for details on how to set up and access JMX statistics in the Merative Social Program Management application.

    With multiple environments or timeframes, when downloading statistics via a browser it is suggested that you name or store the output zip files so they can later be processed or associated with other related artifacts.
    If you are gathering JMX statistics for a specific repeatable scenario it can be useful to reset the statistics before rerunning the scenario so the values are more representative.
    Reset statistics by using the URL: Curam/JMXStats.do?action=reset

    Verifying JMX Statistics

    Incorrect configuration can cause JMX statistics to be incomplete. You can do the following for any JMX statistics file and be confident that any others created in the same context are valid:

    1. The JMX statistics XML file is densely formatted and not very human-readable. Use the following sample Ant build script to convert all XML files in the current directory to HTML, which is a more user-friendly format:

      <?xml version="1.0" encoding="UTF-8"?>
      <project name="JmxToHtml" default="go">

      <target name="go" description="Formats JMX files into HTML documents.">
      <xslt destdir="." excludes="build.xml" style="JMXStats.xsl">
      <mapper type="glob" from="*.xml" to="*.html"/>
      </xslt>
      </target>
      </project>

    2. Search for the BPOMethodStats table and ensure it has content. (Not to be confused with the InFlightBPOMethodStats table, which might be empty if there is no in-flight activity when the statistics were generated).

    3. If there is no BPOMethodStats data, review the Configuring Merative Social Program Management JMX topic in the documentation, update your configuration (which may require an application server restart), re-gather the statistics, re-validate the statistics, and submit them with your PMR.

    Timer-Based JMX Statistics

    Merative Social Program Management JMX statistics can be configured to run on a timed basis; for example, once per hour. Setting up timer-based statistics involves passing Java properties on the JVM invocation of either the application server or the batch process.

    The following table describes the Merative Social Program Management JMX timer properties:

    Document Information

    More support for:

    Merative Social Program Mangement

    Software version:

    All Version(s)

    Operating system(s):

    AIX, HP-UX, Linux, Solaris, Windows, z/OS

    Modified date:

    21 June 2023

    Property Description Default Value

    curam.jmx.output_statistics_timer_enabled

    Enables Merative Social Program
    Management JMX timer statistics.

    FALSE

    curam.jmx.output_statistics_timer_folder

    Specifies the folder where statistics
    files are placed.

    The temporary directory that is based
    on the Java java.io.tmpdir property.

    curam.jmx.output_statistics_timer_period

    Specifies the frequency, in milliseconds,
    that statistics are gathered. The timer
    doesn't begin until 60 seconds passes.
    Therefore, a setting of 60000 means
    statistics are gathered when 2 minutes
    passes.

    300000 (5 minutes)

    The gathered statistics are cumulative.

    Your only option for Merative Social Program Management JMX statistics with batch programs is timer-based statistics; see Collecting Data for Merative Social Program Management batch performance issues for more information.

    To configure timer-based JMX statistics with WebSphere use the administrative console:

    1. Navigate to: Servers > Server Types > WebSphere Application Servers > Server
    2. Under 'Server Infrastructure' click 'Process Definition'
    3. Under 'Additional properties' click 'Java Virtual Machine'
    4. Add the three properties above to 'Generic JVM Arguments', for example:
      • Dcuram.jmx.output_statistics_timer_enabled=true
      • Dcuram.jmx.output_statistics_timer_folder=C:\JMXStats
      • Dcuram.jmx.output_statistics_timer_period=3600000
    5. Save the changes to the master configuration.
    6. Repeat the steps for all relevant servers (consider a different folder for each server).
    7. The modified servers must be restarted for the changes to take effect.

    With this method of generating Merative Social Program Management JMX statistics, the output is obtained in the specified folder(s).

    Note: For applications in the application server, when using timer-based JMX statistics with earlier Merative Social Program Management versions the statistics may not be complete. In these cases use statistics gathered as per the Configuring Merative Social Program Management JMX and Access to the JMX Statistics topics in the documentation.

    Outbound Web Service JMX Statistics

    To gather Merative Social Program Management JMX statistics for outbound web service calls set the curam.jmx.ws_outbound_statistics_enabled property to YES as described in this table:

    Property Description Default Value

    curam.jmx.ws_outbound_statistics_enabled

    Specifies whether outbound web services statistics are gathered.

    NO

    For the online application, setting the property is via the Merative Social Program Management sysadmin user interface and for batch it is via a JVM argument (-Dcuram.jmx.ws_outbound_statistics_enabled=YES).

    What to do next

    Once you have collected the preceding information, you can submit the diagnostic information to Merative support.

    You can submit files using one of following methods to help speed problem diagnosis:

    For a listing of all technotes, downloads, and educational materials specific to the** Merative Social Program Management, search the Merative Social Program Management product support site.