Topics marked with * relate to features available only in vFabric Hyperic.
- GemFire Plugin Overview
- Supported Versions and Requirements
- GemFire Resources and the HQ Inventory Model
- Configuration Overview
- Resource Types and Management Functions
- Management Functions for GemFire Distributed System
- Management Functions for JMX Agent
- Management Functions for Cache Server 6.5
- Management Functions for Cache Server 6.5 Region
- Management Functions for Gateway Hub 6.5
- Management Functions for Gateway Hub 6.5 Gateway
- Management Functions for Gateway Hub 6.5 Region
- Management Functions for Application Peer 6.5
- Management Functions for Application Peer 6.5 Region
- Configuration Instructions
- Step 1 - Enable GemFire Member Discovery and Monitoring
- Step 2 - Configure HQ Agent for the DS
- Step 3 - Configure a Platform for the DS
- Step 4 - Set Event Tracking Options
- Step 5 - Tailor Plugin Monitoring Defaults
- Step 6 - Configure Alert Definitions
- Metric Documentation
- GemFire Events
- HQ GemFire View
Feedback is welcome. Click Add Comment at the bottom of the page.
This page documents Hyperic's GemFire plugin.
GemFire Plugin Overview
Hyperic's GemFire plugin manages a GemFire Distributed System (DS) and the servers and services it comprises. The indented list of resource types below illustrates the hierarchical relationships among that managed components of a GemFire DS. Each resource type is described below in GemFire Resources and the HQ Inventory Model.
GemFire Distributed System
JMX Agent
Cache Server 6.5
Cache Server 6.5 Region
Application Peer 6.5
Application Peer 6.5 Region
Gateway Hub 6.5
Gateway Hub 6.5 Gateway
Gateway Hub 6.5 Region
Supported Versions and Requirements
The GemFire plugin supports GemFire v6.5, and requires HQ Agent v4.5.
GemFire Resources and the HQ Inventory Model
The table below has a brief description of each GemFire resource type; the right column indicates the inventory level for a type in the HQ inventory model.
| GemFire Resource Hierarchy | Description | Inventory Type |
| GemFire Distributed System (DS) | GemFire is a distributed caching system. A GemFire Distributed System (DS) is a logical entity --- a set of servers that are configured to communicate with one another. The servers in a DS are referred to as members or nodes. Member types (defined in the rows below) include:
|
platform |
| JMX Agent | A GemFire JMX Agent is an administrative member of a DS through which the HQ Agent obtains GemFire resource and metric data. The JMX Agent returns ModelMBeans attributes that correspond to inventory properties and metric values for members of the DS. | server |
| Gateway Hub 6.5 | A Gateway Hub is present in a DS that is part of a multi-DS deployment. The Gateway Hub for a DS:
|
server |
| Gateway Hub 6.5 Gateway |
A Gateway manages a queue of events (where an event is an operation that affects a specific region) to be propagated to a particular remote DS. | service |
| Cache Server 6.5 | A Cache Server is a server for cached objects. (As opposed to a GemFire Application Peer, which is a GemFire cache within an application). | server |
| Application Peer 6.5 | An Application Peer is an application process running a GemFire cache. | server |
| regions | In GemFire, a region is a set of cached objects that are managed in accordance with the same policies. For example, rules for expiration, data policy, scope, the directories to which region data is written, the Gateway Hub to which region events are distributed, and so on. A region can have subregions, which in turn can have their own subregions. Regions provide a hierarchical namespace for sets of objects in a cache. A region can exist in any non-admin member of the DS. The name of a region in HQ indicates the resource type of its parent in the managed resource hierarchy:
|
service |
Note: For more information about the managed resource hierarchy, see HQ Inventory Model.
Configuration Overview
The GemFire plugin uses the GemFire JMX Agent to obtain inventory properties and metrics for the GemFire components in a GemFire Distributed System (DS). You configure an HQ Agent to communicate with the DS's JMX Agent. The HQ Agent can run on the same platform as the JMX Agent, or on another platform.
The key requirements for successfully managing GemFire components with HQ are:
- The HQ Agent must be able to connect to the JMX Agent. If the HQ Agent is on a different platform than the JMX Agent for the DS, you must ensure that the HQ Agent can connect to the JMX Agent's RMI service.
- Each GemFire member's statistic-sampling-enabled property (in its gemfire.properties file) must be set to true. The default value for the property is false.
Resource Types and Management Functions
Management Functions for GemFire Distributed System
| Management Function | Description | Classes |
| Auto-discovery | The GemFire plugin does not automatically discover the platform resource — you explicitly create the resource, and configure it to connect to the JMX Agent for the DS, as described in the Configuration Instructions. | com.vmware.springsource.hyperic. plugin.gemfire.detectors. GemfirePlatformDetector |
| Metric Collection | The GemfireCollector class obtains data about DS membership and presents it as metrics for the platform resource. See GemFire Distributed System Metrics. | com.vmware.springsource.hyperic. plugin.gemfire.collectors. GemfireCollector |
| Event Tracking | If event tracking is configured for the DS, the AlertsPlugin class logs an event for each of the GemFire alert types listed in GemFire Events. | com.vmware.springsource.hyperic. plugin.gemfire.AlertsPlugin |
| Live Data | The GemFireLiveData class provides a live data user interface for viewing member metrics in real-time. (As opposed to the Monitor tab for a GemFire component, which presents metrics that have been saved to the HQ database.) See HQ GemFire View. | com.vmware.springsource.hyperic. plugin.gemfire.GemFireLiveData |
Management Functions for JMX Agent
| Management Function | Description | Classes |
|---|---|---|
| Auto-discovery | The JMX Agent for a DS is discovered when the plugin connects to the JMX connection configured for the DS platform. | com.vmware.springsource.hyperic. plugin.gemfire.detectors. JMXAgentDetector |
| Metric Collection | The JMXAgentCollector class reports the Availability of a JMX Agent based on its ability to connect to it and query for member information. | com.vmware.springsource.hyperic .plugin.gemfire.collectors. JMXAgentCollector |
Management Functions for Cache Server 6.5
| Management Function | Description | Classes |
|---|---|---|
| Auto-Discovery | A Cache Server is discovered via JMX Agent for the DS. The CacheServerDetector class obtains inventory properties from the MemberInfoWithStatsMBean ModelMBean for a Cache Server. This list indicates the MBean attribute that supplies each property:
|
com.vmware.springsource.hyperic. plugin.gemfire.detectors. CacheServerDetector |
| Metric Collection | The plugin obtains metrics for Cache Server from the GemFire MemberInfoWithStatsMBean ModelMBean for the server via the JMX Agent for the DS. Each metric corresponds to an attribute of the MBean. For more information, see Member Metrics. |
com.vmware.springsource.hyperic. plugin.gemfire.collectors. MemberCollector |
Management Functions for Cache Server 6.5 Region
| Management Function | Description | Classes |
|---|---|---|
| Auto-Discovery | The CacheServerDetector class obtains inventory properties from the MemberInfoWithStatsMBean ;ModelMBean for a Region in a Cache Server. This list indicates the MBean attribute that supplies each property:
|
com.vmware.springsource.hyperic. plugin.gemfire.detectors. CacheServerDetector |
| Metric Collection | The RegionCollector class obtains metrics for a Region in a Cache Server from the GemFire MemberInfoWithStatsMBean ModelMBean for the server. Each metric corresponds to an attribute of the MBean. See Regions Metrics. | com.vmware.springsource.hyperic. plugin.gemfire.collectors. RegionCollector |
Management Functions for Gateway Hub 6.5
| Management Function | Description | Classes |
|---|---|---|
| Auto-Discovery | The GemFire plugin discovers members of a DS via the JMX Agent for the DS. The GatewayHubDetector class obtains inventory properties from the MemberInfoWithStatsMBean ModelMBean for a Gateway Hub. This list indicates the MBean attribute that supplies each property:
|
com.vmware.springsource.hyperic. plugin.gemfire.collectors. GatewayHubDetector |
| Metric Collection | The GatewayHubCollector obtains metrics for a Gateway Hub from the GemFire {{MemberInfoWithStatsMBean} ModelMBean for the server. Each metric corresponds to an attribute of the MBean. See Member Metrics. | com.vmware.springsource.hyperic. plugin.gemfire.collectors. GatewayHubCollector |
Management Functions for Gateway Hub 6.5 Gateway
| Management Function | Description | Classes |
|---|---|---|
| Auto-Discovery | The GatewayHubDetector class obtains inventory properties for a Gateway from the GemFire MemberInfoWithStatsMBean ModelMBean for the Gateway Hub server. Each metric corresponds to an attribute of the MBean. | com.vmware.springsource.hyperic. plugin.gemfire.collectors. GatewayHubDetector |
| Metric Collection | The GatewayCollector class obtains metrics for a Gateway from the GemFire MemberInfoWithStatsMBean ModelMBean for the Gateway Hub server. Each metric corresponds to an attribute of the MBean. For more information, see See Gateway Hub 6.5 Gateway Metrics. |
com.vmware.springsource.hyperic. plugin.gemfire.collectors. GatewayCollector |
Management Functions for Gateway Hub 6.5 Region
| Management Function | Description | Classes |
|---|---|---|
| Auto-Discovery | The GatewayHubDetector class obtains inventory properties for a region in the Gateway Hub from the MemberInfoWithStatsMBean ModelMBean for the Gateway Hub. This list indicates the MBean attribute that supplies each property:
|
com.vmware.springsource.hyperic. plugin.gemfire.collectors. GatewayHubDetector |
| Metric Collection | The RegionCollector class obtains metrics for a region in a Gateway Hub from the GemFire MemberInfoWithStatsMBean ModelMBean for the Gateway Hub. See Region Metrics. | com.vmware.springsource.hyperic. plugin.gemfire.collectors. RegionCollector |
Management Functions for Application Peer 6.5
| Management Function | Description | Classes |
|---|---|---|
| Auto-Discovery | The GemFire plugin discovers members of a DS via the JMX Agent for the DS. The ApplicationServerDetector class obtains inventory properties from the MemberInfoWithStatsMBean ModelMBean for an Application Peer. This list indicates the MBean attribute that supplies each property:
|
com.vmware.springsource.hyperic. plugin.gemfire.detectors. ApplicationServerDetector |
| Metric Collection | The plugin MemberCollector class obtains metrics for an Application Peer from the GemFire MemberInfoWithStatsMBean ModelMBean for the server. Each metric corresponds to an attribute of the MBean.See Member Metrics | com.vmware.springsource.hyperic. plugin.gemfire.collectors. MemberCollector |
Management Functions for Application Peer 6.5 Region
| Management Function | Description | Classes |
|---|---|---|
| Auto-Discovery | The ApplicationServer Detector class obtains inventory properties for a region in the Application Peer from the MemberInfoWithStatsMBean ModelMBean for the Application Peer. This list indicates the MBean attribute that supplies each property:
|
com.vmware.springsource.hyperic. plugin.gemfire.detectors. ApplicationServerDetector |
| Metric Collection | The RegionCollector class obtains metrics for a region in a Application from the GemFire MemberInfoWithStatsMBean ModelMBean for the Application Peer. Each metric corresponds to an attribute of the MBean. See Region Metrics. | com.vmware.springsource.hyperic. plugin.gemfire.collectors. RegionCollector |
Configuration Instructions
Perform these steps for each DS to be managed.
Step 1 - Enable GemFire Member Discovery and Monitoring
Follow these steps to ensure that the GemFire plugin can discover and monitor GemFire components:
- If you plan to run the HQ Agent on the same platform as the JMX Agent for the DS, skip to Step 2. If you plan to run the HQ Agent on a different platform than the JMX Agent for the DS, you must ensure that the HQ Agent can connect to the JMX Agent's RMI service — you can do this by specifying the JMX Agent's rmi-bind-address when you start it:
./agent start rmi-bind-address=IP_Address -dir/AgentHome - Enable statistics sampling for each GemFire member in the DS — by default, statistics sampling is not enabled. To enable it, edit each member's gemfire.properties file to set the statistic-sampling-enabled property to true.
Step 2 - Configure HQ Agent for the DS
If you have not already done so, either:
- install an HQ Agent to monitor the DS, either on the same platform as the JMX Agent, or on another platform (see Installing an Agent-Only Package for instructions), or
- Select an existing HQ Agent on a remote platform to monitor the DS.
Step 3 - Configure a Platform for the DS
These instructions assume the HQ Agent that will monitor the DS is up and running.
- Resources > Browse.
- Click New Platform on the Tools menu.
- On the New Platform page:
- In the "General Properties" section, enter a meaningful name for the DS, and as desired, a description and its location.
- In the "General Properties" section,
- Select Gemfire Distributed System from the Platform Type pulldown.
- If the HQ Agent is on a different platform from the JMX Agent, select its address:port combination from the Agent Connection pulldown.
- Enter the FQDN of the platform where the JMX Agent runs.
- Enter the IP Address of the platform where the JMX Agent runs.
- Click OK.
- In the "Configuration Properties" section of the Inventory page for the new platform:
- jmx.url — If the HQ Agent and the JMX Agent are on different platforms, edit the default JMX URL shown to include the IP address of the JMX Agent.
- The default jmx.url is:
service:jmx:rmi:///jndi/rmi://localhost:1099/jmxconnector - In the correctly modified jmx.url, localhost is replaced by the hostname or address of the JMX Agent, and the valid JMX connector listen port is specified:
service:jmx:rmi:///jndi/rmi://Host:Port/jmxconnector
- The default jmx.url is:
- jmx.username — Enter the username for accessing the JMX Agent.
- jmx.password — Enter the password for accessing the JMX Agent.
- jmx.url — If the HQ Agent and the JMX Agent are on different platforms, edit the default JMX URL shown to include the IP address of the JMX Agent.
Step 4 - Set Event Tracking Options
To enable log tracking, click the Enable Log Tracking box in the Monitoring section of the Configuration Properties page for the DS. HQ will log events of level "ERR" for the alert types listed in GemFire Events.
For information about HQ log tracking functionality and configuration options, and how to view log events, see Log Tracking.
Step 5 - Tailor Plugin Monitoring Defaults
You can enable and disable metrics, select indicator metrics, and change the collection interval for a resource type on its Monitoring Defaults page. To navigate to a resource type's Monitoring Defaults page:
- Click the Administration tab.
- Click Monitoring Defaults.
- Scroll down to the resource type and click Edit Metric Template.
Step 6 - Configure Alert Definitions
Create alert definitions as desired for your managed vSphere components.
Metric Documentation
The following sections define the metrics for each Gemfire resource type.
GemFire Distributed System Metrics
| Name | Alias | Description | Units | Category | Default On | Default Interval |
|---|---|---|---|---|---|---|
| Availability | Availability | The DS is considered available if the HQ Agent connect to the JMX Agent for the DS. | percentage | AVAILABILITY | true | 1 min |
| Cache Servers | n_caches | Number of Cache Servers in the DS. | none | UTILIZATION | true | 5 min |
| Applications Peer | n_apps | Number of Application Peers in the DS. | none | UTILIZATION | true | 5 min |
| Gateway Hubs | n_gateways | Number of Gateway Hubs in the DS. | none | UTILIZATION | true | 5 min |
Member Metrics
The table below defines the metrics available for the server resources in a GemFire deployment.
- Gateway Hub 6.5
- Cache Server 6.5 Metrics
- Application Peer 6.5
| Name | Alias | Definition | Units | Category | Default On | Default Interval |
|---|---|---|---|---|---|---|
| Availability | Availability | percentage | AVAILABILITY | true | 5 min | |
| Used Heap | used_memory | gemfire. member. stat. usedmemory. long |
percentage | UTILIZATION | true | 5 min |
| Used CPU | used_cpu | gemfire. member. stat. maxmemory.long |
percentage | UTILIZATION | true | 5 min |
| Uptime | uptime | gemfire. member. uptime.l ong |
sec | UTILIZATION | true | 30 min |
| Number of Clients | nclients | none | UTILIZATION | false | 5 min | |
| Gets | stat.gets | gemfire. member. stat. gets. int |
none | UTILIZATION | false | 10 min |
| Gets per Minute | stat.gets1m | none | UTILIZATION | false | 10 min | |
| GetTime | stat.gettime | gemfire. member. stat. gettime. long |
sec | UTILIZATION | false | 5 min |
| Puts | stat.puts | gemfire. member. stat. puts. int |
none | UTILIZATION | false | 10 min |
| Puts per Minute | stat.puts1m | none | UTILIZATION | false | 10 min | |
| PutTime | stat.puttime | gemfire. member. stat. puttime. long |
sec | UTILIZATION | false | 5 min |
Region Metrics
The table below defines the metrics available for the region service resources in a GemFire deployment:
- Cache Server 6.5 Region
- Application Peer 6.5 Region
- Gateway Hub 6.5 Region
| Name | Alias | Definition | Units | Category | Default On | Default Interval |
|---|---|---|---|---|---|---|
| Availability | Availability | percentage | AVAILABILITY | true | 10 min | |
| Entry Count | entry_count | Number of regions; gemfire. region. entrycount. int |
none | UTILIZATION | true | 5 min |
Gateway Hub 6.5 Gateway Metrics
| Name | Alias | Definition | Units | Category | Default On | Default Interval |
|---|---|---|---|---|---|---|
| Availability | Availability | percentage | AVAILABILITY | true | 10 min | |
| Queue size | queuesize | gemfire. member. gateway. queuesize. int |
none | UTILIZATION | true | 5 min |
GemFire Events
| Event | Notification Type | Notification Source | Notification Message |
|---|---|---|---|
| A new member has joined the GemFire Enterprise DS. |
gemfire.distributedsystem.member.joined | ObjectName of the member | String id of the member |
| A member has left the GemFire Enterprise DS | gemfire.distributedsystem. member.left |
ObjectName of the member | String id of the member |
| A member has crashed in the GemFire Enterprise DS | gemfire.distributedsystem. member.crashed |
ObjectName of the member | String id of the member |
| An alert raised from GemFire after scraping the logs of members of the GemFire Enterprise DS. | gemfire.distributedsystem. alert |
String form of ObjectName of the AdminDistributedSystem MBean | Message containg the alert details in a fixed format. |
| The agent has disconnected from the GemFire Enterprise DS. | gemfire.distributedsystem. disconnect |
String form of ObjectName of the AdminDistributedSystem MBean | null |
| A cache is created on a member in a GemFire Enterprise DS. | gemfire.distributedsystem. cache.created |
ObjectName of the member | |
| A cache is closed on a member in a GemFire Enterprise DS. | gemfire.distributedsystem. cache.closed |
ObjectName of the member | |
| A region is created in a cache on a member in a GemFire Enterprise DS | gemfire.distributedsystem. cache.region.created |
ObjectName of the member | |
| A region is removed from a cache on a member in a GemFire Enterprise DS. | gemfire.distributedsystem. cache.region.lost |
ObjectName of the member |
HQ GemFire View
The GemFire plugin provides a live data user interface for viewing metrics in real-time. (As opposed to the Monitor tab for a GemFire component, which presents metrics that have been saved to the HQ database.)
- GemFire View for a DS
- GemFire View for a Cache Server or Application Peer
- GemFire View for a Gateway Hub
GemFire View for a DS
The HQ GemFire View for a Distributed System displays the following information.
- Servers in the DS — The number of Cache Servers, Gateway Hubs and Application Peers in the DS.
- Gateways in the DS — If the DS is part of a multi-site deployment, the number of Gateways in the DS's Gateway Hub.
- Clients connected to the DS — The number of clients (Cache Servers, Gateways, or Application Peers) in other Distributed Systems that are connected to the DS.
The table in the middle of the GemFire View for a DS displays inventory properties and last reported metric values for each server (including Cache Servers, Gateway Hubs and Application Peers) the DS.

GemFire View for a Cache Server or Application Peer
The GemFire View for a Cache Server or Application Peer displays server and region inventory properties and metrics:
- Server metrics — The single row table presents last reported metric values for the Cache Server or Application Peer.
- Region metrics — The multi-row table presents inventory properties and the Entry Count metric for each region the server contains.

GemFire View for a Gateway Hub
The HQ GemFire View for a Gateway Hub displays inventory data and live measurements for the Gateway Hub, the Hubs and Regions it contains, and any clients connected to the Hub.
