Specific fields for Java Management Extensions (JMX) MBeans

Figure 117. Attribute Information page
Attribute Information page with fields for basic attribute information and the "Display attribute in the Tivoli Enterprise Portal" box checked

The syntax of the metric name for a JMX Attribute group consists of tokens separated by a period. The tokens form primary values and optionally secondary values:

The following syntax describes the format for the Metric name field:

Metric Name	=	PrimaryValue [ .SecondaryValue ]
PrimaryValue	=	Attribute.attributeName |
		Method.methodName |
		Domain |
		Property.propertyName |
		Field.fieldName |
		Name
SecondaryValue	=	Field.fieldName |
		Method.methodName |
		Domain |
		Property.propertyName |
		Explode |
		ElementCount
propertyName	=	the name of a key property in an MBean ObjectName
attributeName	=	the name of an MBean attribute
methodName	=	a zero-argument operation of an MBean or a zero-argument method 
of a Notification or other Java object. 
methodName(argument) = A single-argument operation of an MBean or a 
single-argument method of a Notification or other Java object. The 
argument will be passed to the method as a string.
fieldName	=	the name of a public instance variable in a Notification or 
other Java object
notificationMethod	=	the name of a public zero-argument method of a 
Notification object

By including only a primary value in the metric name definition, the data collected can be any of the following items:

By adding a secondary value to the metric's definition, you can drill down into a Java object's primary value, and invoke a public method or fetch a public instance variable.

By adding a secondary value to another secondary value in the metric's definition, you can drill down into a secondary value object. This can continue as deeply as objects are nested inside an MBean or a Notification.

Tokens that make up primary and secondary values are either keywords or names. In most cases, a keyword token is followed by a name token. The following table shows some examples:

Metric name sample Attribute group type Description of the data returned
Domain MBean The domain portion of the MBean (the part before the colon).
Name MBean The full string representation of the MBean.
Attribute.serverVendor MBean MBean attribute serverVendor.
Method.getHeapSize MBean The value returned by the getHeapSize() on the MBean.
Property.j2eeType MBean The value of j2eeType is extracted from the MBean name.
Field.Message Event (Notification) The Message field in a notification.

The keywords Attribute, Method, and Field can return Java objects which contain other data. You can perform operations on those objects by appending secondary value definitions. More examples:

Metric name sample Attribute group type Description of the data returned
Attribute.deployedObject.
Method.getName
MBean Takes the deployedObject attribute from the MBean and gets the result of the getName() method.
Attribute.eventProvider.
Method.getException.
Method.getDescription
MBean This goes three deep: an attribute named eventProvider is presumed to be an object which has a getException() method. This method returns an object with a getDescription() method. That method is called and the return value is put in the column.
Attribute.HeapMemoryUsage.
Method.get(used)
MBean Takes the HeapMemoryUsage attribute from the MBean and gets the result of the get(String value) method. The string used is passed to the method as the argument. Only one argument can be provided and it must be a literal string value.

Shows how you can collect data from an open MBean composite data structure.

Note that Domain and Property can be used as keywords in secondary values if the previous value returned a String in the format of an MBean name. For example:

Metric name sample Attribute group type Description of the data returned
Attribute.jdbcDriver.
Property.name
MBean The attribute jdbcDriver returns an MBean name, and the key property, name, is extracted from the MBean name.
Attribute.jdbcDriver.Domain MBean The attribute jdbcDriver returns an MBean name, and the domain is extracted from the MBean name.

The ElementCount and Explode keywords perform operations on arrays or collections of data.

Examples of each of the above:

Metric name sample Attribute group type Description of the data returned
Attribute.deployedObjects.
ElementCount
MBean The MBean attribute deployedObjects is an array, and this column will contain the number of elements in the array.
Attribute.deployedObjects.
Explode.MBean.Property.
j2eeType
MBean This causes the table to have one row for each element in deployed objects. This column contains the deployed Object's j2eeType.
Attribute.SystemProperties.
Method.values.Explode.
Method.get(key)
MBean Causes you to get one new row for each entry in an open MBean tabular data structure. Each tabular data structure contains a composite data structure with an item named key, which is returned.