23 JMX Reporter

Coherence 3.4 provides a JMX reporting capability (the Reporter). The Reporter provides out-of-the-box reports that help administrators and developers manage capacity and trouble shoot problems.

Note:

Plan for archiving and removing. Due to the volume of the information created by the Reporter, you must have a plan for archiving and/or removing the results BEFORE starting the Reporter.

23.1 Basic Configuration

Enabling the Reporter with basic content requires setting the system properties:

Example 23-1 illustrates the properties on the "management" node.

Example 23-1 System Properties for Reporter on the "Management" Node

-Dtangosol.coherence.management.report.autostart=true
-Dtangosol.coherence.management=all
-Dcom.sun.management.jmxremote

Example 23-2 illustrates the properties on the "managed" node.

Example 23-2 System Properties for Reporter on the "Managed" Node

-Dtangosol.coherence.management.remote=true

Basic configuration will create a single Reporter node that will log the JMX statistics for all nodes in the cluster. The log files will be placed in the working directory of the application.

23.2 Administration

The JMX Reporter is managed through an MBean under the Coherence Domain. The Reporter MBean provides information related to the status and performance of the Reporter. The MBean also provides the capability to start and stop the service and run a report on demand.

Figure 23-1 illustrates the attributes available to the Reporter MBean. The JConsole is being used to view the MBean.

Figure 23-1 Reporter Attributes in JConsole

Description of Figure 23-1 follows
Description of "Figure 23-1 Reporter Attributes in JConsole"

Figure 23-2 illustrates the operations available to the Reporter MBean. For a full description of the Reporter Attributes see the Reporter section of the javadoc.

Figure 23-2 Reporter Operations in JConsole

Description of Figure 23-2 follows
Description of "Figure 23-2 Reporter Operations in JConsole"

23.3 Data Analysis

Seven files are created each hour by the Reporter. Each file is prefixed with the date and hour the report was executed in a YYYYMMDDHH format. This allows for easy location and purging of unwanted information. The files generated are described in Table 23-1:

Table 23-1 File Names Generated by Reporter

File Name Description

YYYYMMDDHH-memory-status.txt

Contains memory and garbage collection information about each node.

YYYYMMDDHH-network-health.txt

Contains the publisher success rates and receiver success rates for the entire grid

YYYYMMDDHH-network-health-detail.txt

Contains the publisher success rates and receiver success rates for each node

YYYYMMDDHH-node.txt

Contains the list of nodes that were members of the grid

YYYYMMDDHH-service.txt

Contains Request and Task information for each service.

YYYYMMDDHH-proxy.txt

Contains utilization information about each proxy node in the grid

YYYYMMDDHH-cache-usage.txt

Contains cache utilization (put, get, and so on) statistic for each cache


See Chapter 26, "Analyzing Reporter Content" for a complete description of the data contained in each file.

23.4 Advanced Configuration

23.4.1 Creating Custom Reports

  1. Create the custom report configuration file. See Chapter 24, "How to Create a Custom Report."

  2. Update report batch to execute the report. See Chapter 25, "How to Modify Report Batch."

  3. Run on demand. See Chapter 27, "How to Run a Report on Demand."

23.4.2 Running Reporter in a Distributed Configuration

A distributed configuration is only recommended in situations where grid stability is an issue. In this configuration, the distributed reporters will run independently, and the execution times will not align. Therefore, grid level analysis is extremely difficult but node level analysis during periods when nodes may be leaving or joining the grid will still be available.

When running in distributed mode, each node logs local JMX statistics while allowing for centralized management of the Reporters. To enable this configuration set the following system properties

On the "managing" node:

Example 23-3 System Properties for Reporter in Distributed Mode on the "Managing" Node

-Dtangosol.coherence.management.report.autostart=false
-Dtangosol.coherence.management.report.distributed=true
-Dtangosol.coherence.management=all
-Dcom.sun.management.jmxremote

On the "managed" node:

Example 23-4 System Properties for Reporter in Distributed Mode on the "Managed" Node

-Dtangosol.coherence.management.report.autostart=true
-Dtangosol.coherence.management.report.distributed=true
-Dtangosol.coherence.management=local-only
-Dtangosol.coherence.management.remote=true