Follow these guidelines when specifying ModelMBeanAttributeInfo descriptors.

The vCenter Hyperic agent interprets ModelMBeanAttributeInfo as property or metric data. If the metricType descriptor is defined, vCenter Hyperic interprets the data as a metric.

An attribute that represents a property must be JMX SimpleType or an array of JMX SimpleTypes.

An attribute that represents a metric must be numeric JMX SimpleType.

ModelMBeanAttributeInfo Descriptors

ModelMBean Field



Expected Format

Default Value

ModelMBeanAttributeInfo. getDescription()

Description of the property or metric.


In the vCenter Hyperic user interface, a property is identified by its description.


Must not be null.


ModelMBeanAttributeInfo. getDescriptor(). getField("metricCategory")

Category of a Metric


Allowable values:

PERFORMANCE - a metric that provides time-related information. For example, average elapsed time per method call.

UTILIZATION - a metric that indicates resource usage. For example, memory usage, cache size, thread pool size.

THROUGHPUT - a metric that indicates the amount of work done over a period of time. For example, transactions per second.


ModelMBeanAttributeInfo. getDescriptor(). getField("displayName")

Name that uniquely identifies the metric for a service type.


This value is used to uniquely identify the metric per service type.

Defaults to the name of the ModelMBean attribute.

getDescriptor(). getField("indicator")

Designates a metric as an Indicator in vCenter Hyperic. Indicators are presented on a resource's Indicator page in vCenter Hyperic.


If set to true, the metric is an Indicator, and is collected by default.


ModelMBeanAttributeInfo. getDescriptor(). getField("metricType")

Indicates how the value of the metric changes over time.

The presence of this field indicates the MBeanAttribute is a metric. If not set, the attribute will be considered a custom property.

vCenter Hyperic sets the collection interval for a metric based on the value of metricType.

Counter metrics are collected every 10 minutes.

Gauge metrics are collected every 5 minutes.


The JMX specification requires metricType have a value of either:

counter - a metric whose value does not decrease unless it is reset to a starting value. "Number of requests received" is an example of a counter metric. Counter metrics usually have a positive integer value.

gauge - a metric whose value can either increase or decrease. Cache Hit Rate is an example of a gauge metric.


ModelMBeanAttributeInfo. getDescriptor(). getField("units")

The unit in which an metric is measured.


Hyperic specifies these allowable values:

B- Bytes

KB - Kilobytes

MB - Megabytes

GB - Gigabytes

TB - Terabytes

epoch-millis - Time since January 1, 1970 in milliseconds.

epoch-seconds - Time since January 1, 1970 in seconds.

mu - Microseconds

MS - Milliseconds.

jiffys - Jiffies (1/100 sec)

s - Seconds.

cents - Cents (1/100 of 1 US Dollar)

None, if not specified or if set to an unrecognized unit.