This chapter describes the JMX MBeans that allow you to configure and monitor a Message Queue broker. It consists of the following sections:
This section describes the MBeans used for managing brokers:
The broker configuration MBean configures a broker.
The broker monitor MBean monitors a broker.
The following subsections describe each of these MBeans in detail.
The broker configuration MBean is used for configuring a broker. There is one such MBean for each broker.
The broker configuration MBean has the following object name:
com.sun.messaging.jms.server:type=Broker,subtype=Config
A string representing this object name is defined as a static constant BROKER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The broker configuration MBean has the attributes shown in Table 3–1. The names of these attributes are defined as static constants in the utility class BrokerAttributes.
Table 3–1 Broker Configuration Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No |
Must be a unique alphanumeric string of no more than n - 13 characters, where n is the maximum table name length allowed by the database. No two running brokers may have the same broker identifier. For brokers using a JDBC-based persistent data store, this string is appended to the names of all database tables to make them unique in the case where more than one broker instance is using the same database. If a database is not used as the persistent data store, the value of this attribute is null. Note – For high-availability brokers, database table names use the ClusterID attribute (see Table 3–74) instead. |
|
String |
No |
Broker version |
|
String |
No |
Broker instance name Example: imqbroker |
|
Integer |
Yes |
Port number of Port Mapper |
The broker configuration MBean supports the operations shown in Table 3–2. The names of these operations are defined as static constants in the utility class BrokerOperations.
Table 3–2 Broker Configuration Operations
The broker configuration MBean supports the notification shown in Table 3–3.
Table 3–3 Broker Configuration Notification
Name |
Description |
---|---|
Attribute value changed |
The broker monitor MBean is used for monitoring a broker. There is one such MBean for each broker.
The broker monitor MBean has the following object name:
com.sun.messaging.jms.server:type=Broker,subtype=Monitor
A string representing this object name is defined as a static constant BROKER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The broker monitor MBean has the attributes shown in Table 3–4. The names of these attributes are defined as static constants in the utility class BrokerAttributes.
Table 3–4 Broker Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No |
Must be a unique alphanumeric string of no more than n - 13 characters, where n is the maximum table name length allowed by the database. No two running brokers may have the same broker identifier. For brokers using a JDBC-based persistent data store, this string is appended to the names of all database tables to make them unique in the case where more than one broker instance is using the same database. If a database is not used as the persistent data store, the value of this attribute is null. Note – For high-availability brokers, database table names use the ClusterID attribute (see Table 3–78) instead. |
|
String |
No |
Broker version |
|
String |
No |
Broker instance name |
|
Integer |
No |
Port number of Port Mapper |
|
String |
No |
Current broker resource state: green: < 80% memory utilization yellow: 80–90% memory utilization orange: 90–98% memory utilization red: > 98% memory utilization Note – The threshold values shown are the default thresholds for triggering the various states; these can be changed by setting the broker configuration properties imq.green.threshold imq.yellow.threshold imq.orange.threshold imq.red.threshold |
|
Boolean |
No |
Is broker embedded (started from within another process)? |
The broker monitor MBean supports the notifications shown in Table 3–5. These notifications are instances of the Message Queue JMX classes BrokerNotification and ClusterNotification, and their names are defined as static constants in those classes.
Table 3–5 Broker Monitor Notifications
Name |
Utility Constant |
Description |
---|---|---|
Broker has begun shutting down |
||
Broker has begun quiescing |
||
Broker has finished quiescing |
||
Broker has begun taking over persistent data store from another broker |
||
Broker has finished taking over persistent data store from another broker |
||
Attempted takeover has failed |
||
Broker’s resource state has changed |
||
Broker has joined a cluster |
Table 3–6 shows the methods defined in class BrokerNotification for obtaining details about a broker monitor notification. See Table 3–83 for the corresponding methods of class ClusterNotification.
Table 3–6 Data Retrieval Methods for Broker Monitor Notifications
This section describes the MBeans used for managing connection services:
The service configuration MBean configures a connection service.
The service monitor MBean monitors a connection service.
The service manager configuration MBean manages service configuration MBeans.
The service manager monitor MBean manages service monitor MBeans.
The following subsections describe each of these MBeans in detail.
The service configuration MBean is used for configuring a connection service. There is one such MBean for each service.
The service configuration MBean has an object name of the following form:
com.sun.messaging.jms.server:type=Service,subtype=Config,name=serviceName
where serviceName is the name of the connection service (see Table 3–7). The utility class MQObjectName provides a static method, createServiceConfig, for constructing object names of this form.
Table 3–7 Connection Service Names for Service Configuration MBeans
Service Name |
Service Type |
Protocol Type |
---|---|---|
jms |
Normal |
TCP |
ssljms |
Normal |
TLS (SSL-based security) |
httpjms |
Normal |
HTTP |
httpsjms |
Normal |
HTTPS (SSL-based security) |
admin |
Admin |
TCP |
ssladmin |
Admin |
TLS (SSL-based security) |
The service configuration MBean has the attributes shown in Table 3–8. The names of these attributes are defined as static constants in the utility class ServiceAttributes.
Table 3–8 Service Configuration Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No |
Service name See Table 3–7 for possible values. |
|
Integer |
Yes |
Port number (jms, ssljms, admin, and ssladmin services only) A value of 0 specifies that the port is to be dynamically allocated by the Port Mapper; to learn the actual port currently used by the service, use the Port attribute of the service monitor MBean. |
|
Integer |
Yes |
Minimum number of threads assigned to service Must be greater than 0. |
|
Integer |
Yes |
Maximum number of threads assigned to service Must be greater than or equal to MinThreads. |
|
String |
No |
Threading model for thread pool management: dedicated: Two dedicated threads per connection, one for incoming and one for outgoing messages shared: Connections processed by shared thread when sending or receiving messages (jms and admin services only) |
The service configuration MBean supports the operations shown in Table 3–9. The names of these operations are defined as static constants in the utility class ServiceOperations.
Table 3–9 Service Configuration Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
None |
Pause service (jms, ssljms, httpjms, and httpsjms services only) |
|
None |
None |
Resume service (jms, ssljms, httpjms, and httpsjms services only) |
The service configuration MBean supports the notification shown in Table 3–10.
Table 3–10 Service Configuration Notification
Name |
Description |
---|---|
Attribute value changed |
The service monitor MBean is used for monitoring a connection service. There is one such MBean for each service.
The service monitor MBean has an object name of the following form:
com.sun.messaging.jms.server:type=Service,subtype=Monitor,name=serviceName
where serviceName is the name of the connection service (see Table 3–11). The utility class MQObjectName provides a static method, createServiceMonitor, for constructing object names of this form.
Table 3–11 Connection Service Names for Service Monitor MBeans
Service Name |
Service Type |
Protocol Type |
---|---|---|
jms |
Normal |
TCP |
ssljms |
Normal |
TLS (SSL-based security) |
httpjms |
Normal |
HTTP |
httpsjms |
Normal |
HTTPS (SSL-based security) |
admin |
Admin |
TCP |
ssladmin |
Admin |
TLS (SSL-based security) |
The service monitor MBean has the attributes shown in Table 3–12. The names of these attributes are defined as static constants in the utility class ServiceAttributes.
Table 3–12 Service Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No |
Service name See Table 3–11 for possible values. |
|
Integer |
No |
Port number currently used by service |
|
Integer |
No |
Current state See Table 3–13 for possible values. |
|
String |
No |
String representation of current state: Useful for displaying the state in human-readable form, such as in the Java Monitoring and Management Console (jconsole). See Table 3–13 for possible values. |
|
Integer |
No |
Current number of connections |
|
Long |
No |
Cumulative number of connections opened since broker started |
|
Long |
No |
Cumulative number of connections rejected since broker started |
|
Integer |
No |
Current number of threads actively handling connections |
|
Integer |
No |
Current number of message producers |
|
Integer |
No |
Current number of message consumers |
|
Long |
No |
Cumulative number of messages received since broker started |
|
Long |
No |
Cumulative number of messages sent since broker started |
|
Long |
No |
Cumulative size in bytes of messages received since broker started |
|
Long |
No |
Cumulative size in bytes of messages sent since broker started |
|
Long |
No |
Cumulative number of packets received since broker started |
|
Long |
No |
Cumulative number of packets sent since broker started |
|
Long |
No |
Cumulative size in bytes of packets received since broker started |
|
Long |
No |
Cumulative size in bytes of packets sent since broker started |
Table 3–13 shows the possible values for the State and StateLabel attributes. These values are defined as static constants in the utility class ServiceState.
Table 3–13 Connection Service State Values
Value |
Utility Constant |
String Representation |
Meaning |
---|---|---|---|
0 |
RUNNING |
Service running |
|
1 |
PAUSED |
Service paused |
|
2 |
QUIESCED |
Service quiesced |
|
-1 |
UNKNOWN |
Service state unknown |
The service monitor MBean supports the operations shown in Table 3–14. The names of these operations are defined as static constants in the utility class ServiceOperations.
Table 3–14 Service Monitor Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
ObjectName[] |
Object names of connection monitor MBeans for all current connections |
|
None |
String[] | ||
None |
String[] |
Consumer identifiers of all current message consumers |
The service monitor MBean supports the notifications shown in Table 3–15. These notifications are instances of the Message Queue JMX classes ServiceNotification and ConnectionNotification, and their names are defined as static constants in those classes.
Table 3–15 Service Monitor Notifications
Name |
Utility Constant |
Description |
---|---|---|
Service paused |
||
Service resumed |
||
Connection opened |
||
Connection rejected |
||
Connection closed |
Table 3–16 shows the method defined in class ServiceNotification for obtaining details about a service monitor notification. See Table 3–31 for the corresponding methods of class ConnectionNotification.
Table 3–16 Data Retrieval Method for Service Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
String |
Service name See Table 3–11 for possible values. |
Each broker has a single service manager configuration MBean, used for managing all of the broker's service configuration MBeans.
The service manager configuration MBean has the following object name:
com.sun.messaging.jms.server:type=ServiceManager,subtype=Config
A string representing this object name is defined as a static constant SERVICE_MANAGER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The service manager configuration MBean has the attributes shown in Table 3–17. The names of these attributes are defined as static constants in the utility class ServiceAttributes.
Table 3–17 Service Manager Configuration Attributes
Name |
Type |
Settable? |
Description |
Integer |
No |
Total minimum number of threads for all active services |
|
Integer |
No |
Total maximum number of threads for all active services |
The service manager configuration MBean supports the operations shown in Table 3–18. The names of these operations are defined as static constants in the utility class ServiceOperations.
Table 3–18 Service Manager Configuration Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
ObjectName[] |
Object names of service configuration MBeans for all services |
|
None |
None |
Pause all services except admin and ssladmin |
|
None |
None |
Resume all services |
Each broker has a single service manager monitor MBean, used for managing all of the broker's service monitor MBeans.
The service manager monitor MBean has the following object name:
com.sun.messaging.jms.server:type=ServiceManager,subtype=Monitor
A string representing this object name is defined as a static constant SERVICE_MANAGER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The service manager monitor MBean has the attributes shown in Table 3–19. The names of these attributes are defined as static constants in the utility class ServiceAttributes.
Table 3–19 Service Manager Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Number of connection services |
|
Integer |
No |
Total current number of threads actively handling connections for all services |
|
Long |
No |
Total cumulative number of messages received by all services since broker started |
|
Long |
No |
Total cumulative number of messages sent by all services since broker started |
|
Long |
No |
Total cumulative size in bytes of messages received by all services since broker started |
|
Long |
No |
Total cumulative size in bytes of messages sent by all services since broker started |
|
Long |
No |
Total cumulative number of packets received by all services since broker started |
|
Long |
No |
Total cumulative number of packets sent by all services since broker started |
|
Long |
No |
Total cumulative size in bytes of packets received by all services since broker started |
|
Long |
No |
Total cumulative size in bytes of packets sent by all services since broker started |
The service manager monitor MBean supports the operation shown in Table 3–20. The name of this operation is defined as a static constant in the utility class ServiceOperations.
Table 3–20 Service Manager Monitor Operation
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
ObjectName[] |
Object names of all service monitor MBeans |
The service manager monitor MBean supports the notifications shown in Table 3–21. These notifications are instances of the Message Queue JMX class ServiceNotification, and their names are defined as static constants in that class.
Table 3–21 Service Manager Monitor Notifications
Name |
Utility Constant |
Description |
---|---|---|
Service paused |
||
Service resumed |
Table 3–22 shows the method defined in class ServiceNotification for obtaining details about a service manager monitor notification.
Table 3–22 Data Retrieval Method for Service Manager Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
String |
Service name See Table 3–11 for possible values. |
This section describes the MBeans used for managing connections:
The connection configuration MBean configures a connection.
The connection monitor MBean monitors a connection.
The connection manager configuration MBean manages connection configuration MBeans.
The connection manager monitor MBean manages connection monitor MBeans.
The following subsections describe each of these MBeans in detail.
The connection configuration MBean is used for configuring a connection. There is one such MBean for each connection.
The connection configuration MBean has an object name of the following form:
com.sun.messaging.jms.server:type=Connection,subtype=Config,id=connectionID
where connectionID is the connection identifier. For example:
com.sun.messaging.jms.server:type=Connection,subtype=Config,id=7853717387765338368
The utility class MQObjectName provides a static method, createConnectionConfig, for constructing object names of this form.
The connection configuration MBean has the attribute shown in Table 3–23. The name of this attribute is defined as a static constant in the utility class ConnectionAttributes.
Table 3–23 Connection Configuration Attribute
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No |
The connection monitor MBean is used for monitoring a connection. There is one such MBean for each connection.
The connection monitor MBean has an object name of the following form:
com.sun.messaging.jms.server:type=Connection,subtype=Monitor,id=connectionID
where connectionID is the connection identifier. For example:
com.sun.messaging.jms.server:type=Connection,subtype=Monitor,id=7853717387765338368
The utility class MQObjectName provides a static method, createConnectionMonitor, for constructing object names of this form.
The connection monitor MBean has the attributes shown in Table 3–24. The names of these attributes are defined as static constants in the utility class ConnectionAttributes.
Table 3–24 Connection Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No | ||
String |
No |
Host from which connection was made |
|
Integer |
No |
Port number |
|
String |
No |
Connection service name |
|
String |
No |
User name |
|
String |
No |
Client identifier |
|
String |
No |
String describing client platform |
|
Integer |
No |
Current number of associated message producers |
|
Integer |
No |
Current number of associated message consumers |
The connection monitor MBean supports the operations shown in Table 3–25. The names of these operations are defined as static constants in the utility class ConnectionOperations.
Table 3–25 Connection Monitor Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
ObjectName |
Object name of service monitor MBean for associated connection service |
|
None |
ObjectName[] |
Object names of destination monitor MBeans for all associated temporary destinations |
|
None |
String[] | ||
None |
String[] |
Each broker has a single connection manager configuration MBean, used for managing all of the broker's connection configuration MBeans.
The connection manager configuration MBean has the following object name:
com.sun.messaging.jms.server:type=ConnectionManager,subtype=Config
A string representing this object name is defined as a static constant CONNECTION_MANAGER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The connection manager configuration MBean has the attribute shown in Table 3–26. The name of this attribute is defined as a static constant in the utility class ConnectionAttributes.
Table 3–26 Connection Manager Configuration Attribute
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Number of current connections |
The connection manager configuration MBean supports the operations shown in Table 3–27. The names of these operations are defined as static constants in the utility class ConnectionOperations.
Table 3–27 Connection Manager Configuration Operations
Each broker has a single connection manager monitor MBean, used for managing all of the broker's connection monitor MBeans.
The connection manager monitor MBean has the following object name:
com.sun.messaging.jms.server:type=ConnectionManager,subtype=Monitor
A string representing this object name is defined as a static constant CONNECTION_MANAGER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The connection manager monitor MBean has the attributes shown in Table 3–28. The names of these attributes are defined as static constants in the utility class ConnectionAttributes.
Table 3–28 Connection Manager Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Current number of connections |
|
Long |
No |
Cumulative number of connections opened since broker started |
|
Long |
No |
Cumulative number of connections rejected since broker started |
The connection manager monitor MBean supports the operation shown in Table 3–29. The name of this operation is defined as a static constant in the utility class ConnectionOperations.
Table 3–29 Connection Manager Monitor Operation
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
ObjectName[] |
Object names of connection monitor MBeans for all current connections |
The connection manager monitor MBean supports the notifications shown in Table 3–30. These notifications are instances of the Message Queue JMX class ConnectionNotification, and their names are defined as static constants in that class.
Table 3–30 Connection Manager Monitor Notifications
Name |
Utility Constant |
Description |
---|---|---|
Connection opened |
||
Connection rejected |
||
Connection closed |
Table 3–31 shows the methods defined in class ConnectionNotification for obtaining details about a connection manager monitor notification.
Table 3–31 Data Retrieval Methods for Connection Manager Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
String |
Connection identifier |
|
String |
Host from which connection was made |
|
String |
Connection service name |
|
String |
User name |
This section describes the MBeans used for managing destinations:
The destination configuration MBean configures a destination.
The destination monitor MBean monitors a destination.
The destination manager configuration MBean manages destination configuration MBeans.
The destination manager monitor MBean manages destination monitor MBeans.
The following subsections describe each of these MBeans in detail.
The destination configuration MBean is used for configuring a destination. There is one such MBean for each destination.
The destination configuration MBean has an object name of the following form:
com.sun.messaging.jms.server:type=Destination,subtype=Config,desttype=destinationType,name=destinationName
where destinationType is one of the destination types shown in Table 3–33 and destinationName is the name of the destination. For example:
com.sun.messaging.jms.server:type=Destination,subtype=Config,desttype=t,name="Dest"
The utility class MQObjectName provides a static method, createDestinationConfig, for constructing object names of this form.
The destination configuration MBean has the attributes shown in Table 3–32. The names of these attributes are defined as static constants in the utility class DestinationAttributes.
Table 3–32 Destination Configuration Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No |
Destination name |
|
String |
No |
Destination type See Table 3–33 for possible values. |
|
Long |
Yes |
Maximum number of unconsumed messages A value of -1 denotes an unlimited number of messages. |
|
Long |
Yes |
Maximum size, in bytes, of any single message Rejection of a persistent message is reported to the producing client with an exception; no notice is sent for nonpersistent messages. A value of -1 denotes an unlimited message size. |
|
Long |
Yes |
Maximum total memory, in bytes, for unconsumed messages |
|
String |
Yes |
Broker behavior when memory-limit threshold reached See Table 3–34 for possible values. If the value is REMOVE_OLDEST or REMOVE_LOW_PRIORITY and the UseDMQ attribute is true, excess messages are moved to the dead message queue. |
|
Integer |
Yes |
Maximum number of associated message producers When this limit is reached, no new producers can be created. A value of -1 denotes an unlimited number of producers. |
|
Integer |
Yes |
Maximum number of associated active message consumers in load-balanced delivery A value of -1 denotes an unlimited number of consumers. |
|
Integer |
Yes |
Maximum number of associated backup message consumers in load-balanced delivery A value of -1 denotes an unlimited number of consumers. |
|
Long |
Yes |
Maximum number of messages delivered to consumer in a single batch In load-balanced queue delivery, this is the initial number of queued messages routed to active consumers before load balancing begins. A destination consumer can override this limit by specifying a lower value on a connection. A value of -1 denotes an unlimited number of consumers. |
|
Boolean |
No |
Local delivery only? This property applies only to destinations in broker clusters, and cannot be changed once the destination has been created. If true, the destination is not replicated on other brokers and is limited to delivering messages only to local consumers (those connected to the broker on which the destination is created). |
|
Boolean |
Yes |
Local delivery preferred? This property applies only to load-balanced delivery in broker clusters. If true, messages will be delivered to remote consumers only if there are no associated consumers on the local broker. The destination must not be restricted to local-only delivery (LocalOnly must be false). |
|
Boolean |
Yes |
Send dead messages to dead message queue? If false, dead messages will simply be discarded. |
|
Boolean |
Yes |
XML schema validation is enabled? If set to false or not set, then XML schema validation is not enabled for the destination. |
|
String |
Yes |
Space separated list of XML schema document (XSD) URI strings The URIs point to the location of one or more XSDs to use for XML schema validation, if enabled. Use double quotes around this value if multiple URIs are specified. Example: “http://foo/flap.xsd http://test.com/test.xsd” If this property is not set or null and XML validation is enabled, XML validation is performed using a DTD specified in the XML document. |
|
Boolean |
Yes |
Reload XML schema on failure enabled? If set to false or not set, then the schema is not reloaded if validation fails. |
Table 3–33 shows the possible values for the Type attribute. These values are defined as static constants in the utility class DestinationType.
Table 3–33 Destination Configuration Type Values
Value |
Utility Constant |
Meaning |
---|---|---|
Queue (point-to-point) destination |
||
Topic (publish/subscribe) destination |
Table 3–34 shows the possible values for the LimitBehavior attribute. These values are defined as static constants in the utility class DestinationLimitBehavior.
Table 3–34 Destination Limit Behaviors
Value |
Utility Constant |
Meaning |
---|---|---|
FLOW_CONTROL |
Slow down producers |
|
REMOVE_OLDEST |
Throw out oldest messages |
|
REMOVE_LOW_PRIORITY |
Throw out lowest-priority messages according to age; no notice to producing client |
|
REJECT_NEWEST |
Reject newest messages; notify producing client with an exception only if message is persistent |
The destination configuration MBean supports the operations shown in Table 3–35. The names of these operations are defined as static constants in the utility class DestinationOperations.
Table 3–35 Destination Configuration Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
pauseType (String) |
None |
Pause message delivery See Table 3–36 for possible values of pauseType. |
|
None |
None |
Pause all message delivery Equivalent to pause(DestinationPauseType.ALL). |
|
None |
None |
Resume message delivery |
|
None |
None |
Purge all messages |
|
None |
None |
Compact persistent data store Note – Only a paused destination can be compacted. |
Table 3–36 shows the possible values for the pause operation's pauseType parameter. These values are defined as static constants in the utility class DestinationPauseType.
Table 3–36 Destination Pause Types
Value |
Utility Constant |
Meaning |
---|---|---|
PRODUCERS |
Pause delivery from associated message producers |
|
CONSUMERS |
Pause delivery to associated message consumers |
|
ALL |
Pause all message delivery |
The destination configuration MBean supports the notification shown in Table 3–37.
Table 3–37 Destination Configuration Notification
Name |
Description |
---|---|
Attribute value changed |
The destination monitor MBean is used for monitoring a destination. There is one such MBean for each destination.
The destination monitor MBean has an object name of the following form:
com.sun.messaging.jms.server:type=Destination,subtype=Monitor,desttype=destinationType,name=destinationName
where destinationType is one of the destination types shown in Table 3–39 and destinationName is the name of the destination. For example:
com.sun.messaging.jms.server:type=Destination,subtype=Monitor,desttype=t,name="Dest"
The utility class MQObjectName provides a static method, createDestinationMonitor, for constructing object names of this form.
The destination monitor MBean has the attributes shown in Table 3–38. The names of these attributes are defined as static constants in the utility class DestinationAttributes.
Table 3–38 Destination Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
No |
Destination name |
|
String |
No |
Destination type See Table 3–39 for possible values. |
|
CreatedByAdmin |
Boolean |
No |
Administrator-created destination? |
Temporary |
Boolean |
No |
Temporary destination? |
String |
No | ||
Integer |
No |
Current state See Table 3–40 for possible values. |
|
String |
No |
String representation of current state: Useful for displaying the state in human-readable form, such as in the Java Monitoring and Management Console (jconsole). See Table 3–40 for possible values. |
|
Integer |
No |
Current number of associated message producers |
|
Integer |
No |
Current number of associated message consumers For queue destinations, this attribute includes both active and backup consumers. For topic destinations, it includes both nondurable and (active and inactive) durable subscribers and is equivalent to NumActiveConsumers. |
|
Integer |
No |
Current number of wildcard message producers associated with the destination For topic destinations only. |
|
Integer |
No |
Current number of wildcard message consumers associated with the destination For topic destinations only. |
|
Integer |
No |
Current number of wildcard message producers and wildcard message consumers associated with the destination For topic destinations only. |
|
Integer |
No |
Peak number of associated message consumers since broker started For queue destinations, this attribute includes both active and backup consumers. For topic destinations, it includes both nondurable and (active and inactive) durable subscribers and is equivalent to PeakNumActiveConsumers. |
|
Integer |
No |
Average number of associated message consumers since broker started For queue destinations, this attribute includes both active and backup consumers. For topic destinations, it includes both nondurable and (active and inactive) durable subscribers and is equivalent to AvgNumActiveConsumers. |
|
Integer |
No |
Current number of associated active message consumers For topic destinations, this attribute includes both nondurable and (active and inactive) durable subscribers and is equivalent to NumConsumers. |
|
Integer |
No |
Peak number of associated active message consumers since broker started For topic destinations, this attribute includes both nondurable and (active and inactive) durable subscribers and is equivalent to PeakNumConsumers. |
|
Integer |
No |
Average number of associated active message consumers since broker started For topic destinations, this attribute includes both nondurable and (active and inactive) durable subscribers and is equivalent to AvgNumConsumers. |
|
Integer |
No |
Current number of associated backup message consumers |
|
Integer |
No |
Peak number of associated backup message consumers since broker started |
|
Integer |
No |
Average number of associated backup message consumers since broker started |
|
Long |
No |
Current number of messages stored in memory and persistent store Does not include messages held in transactions. |
|
Long |
No |
Current number of messages stored in memory and persistent store that were produced to a remote broker in a cluster. This number does not include messages included in transactions. |
|
Long |
No |
Current number of messages being held in memory and persistent store pending acknowledgment |
|
Long |
No |
Current number of messages being held in memory and persistent store in uncommitted transactions |
|
String |
No |
JMS Message ID of the next message to be delivered to any consumer |
|
Long |
No |
Peak number of messages stored in memory and persistent store since broker started |
|
Long |
No |
Average number of messages stored in memory and persistent store since broker started |
|
Long |
No |
Cumulative number of messages received since broker started |
|
Long |
No |
Cumulative number of messages sent since broker started |
|
Long |
No |
Cumulative size in bytes of messages received since broker started |
|
Long |
No |
Cumulative size in bytes of messages sent since broker started |
|
Long |
No |
Size in bytes of largest single message received since broker started |
|
Long |
No |
Current total size in bytes of messages stored in memory and persistent store Does not include messages held in transactions. |
|
Long |
No |
Current total size in bytes of messages stored in memory and persistent store that were produced to a remote broker in a cluster. This value does not include messages included in transactions. |
|
Long |
No |
Current total size in bytes of messages being held in memory and persistent store in uncommitted transactions |
|
Long |
No |
Peak total size in bytes of messages stored in memory and persistent store since broker started |
|
Long |
No |
Average total size in bytes of messages stored in memory and persistent store since broker started |
|
Long |
No |
Amount of disk space, in bytes, reserved for destination |
|
Long |
No |
Amount of disk space, in bytes, currently in use by destination |
|
Integer |
No |
Ratio of disk space currently in use to disk space reserved for destination |
Table 3–39 shows the possible values for the Type attribute. These values are defined as static constants in the utility class DestinationType.
Table 3–39 Destination Monitor Type Values
Value |
Utility Constant |
Meaning |
---|---|---|
Queue (point-to-point) destination |
||
Topic (publish/subscribe) destination |
Table 3–40 shows the possible values for the State and StateLabel attributes. These values are defined as static constants in the utility class DestinationState.
Table 3–40 Destination State Values
Value |
Utility Constant |
String Representation |
Meaning |
---|---|---|---|
0 |
RUNNING |
Destination running |
|
1 |
CONSUMERS_PAUSED |
Message consumers paused |
|
2 |
PRODUCERS_PAUSED |
Message producers paused |
|
3 |
PAUSED |
Destination paused |
|
-1 |
UNKNOWN |
Destination state unknown |
The destination monitor MBean supports the operations shown in Table 3–41. The names of these operations are defined as static constants in the utility class DestinationOperations.
Table 3–41 Destination Monitor Operations
The destination monitor MBean supports the notifications shown in Table 3–42. These notifications are instances of the Message Queue JMX class DestinationNotification, and their names are defined as static constants in that class.
Table 3–42 Destination Monitor Notifications
Name |
Utility Constant |
Description |
---|---|---|
Destination paused |
||
Destination resumed |
||
Destination compacted |
||
Destination purged |
Table 3–43 shows the methods defined in class DestinationNotification for obtaining details about a destination monitor notification.
Table 3–43 Data Retrieval Methods for Destination Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
String |
Destination name |
|
String |
Destination type See Table 3–39 for possible values. |
|
Boolean |
Administrator-created destination? |
|
String |
Pause type See Table 3–36 for possible values. |
Each broker has a single destination manager configuration MBean, used for managing all of the broker's destination configuration MBeans.
The destination manager configuration MBean has the following object name:
com.sun.messaging.jms.server:type=DestinationManager,subtype=Config
A string representing this object name is defined as a static constant DESTINATION_MANAGER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The destination manager configuration MBean has the attributes shown in Table 3–44. The names of these attributes are defined as static constants in the utility class DestinationAttributes.
Table 3–44 Destination Manager Configuration Attributes
The destination manager configuration MBean supports the operations shown in Table 3–45. The names of these operations are defined as static constants in the utility class DestinationOperations.
Table 3–45 Destination Manager Configuration Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
ObjectName[] |
Object names of destination configuration MBeans for all current destinations |
|
destinationType (String) destinationName (String) destinationAttributes (AttributeList) |
None |
Create destination with specified type, name, and attributes The destinationType and destinationName parameters are required, but destinationAttributes may be null. See Table 3–46 for possible values of destinationType. The destinationAttributes list may include any of the attributes listed in Table 3–32 except Name and Type. The names of these attributes are defined as static constants in the utility class DestinationAttributes. |
|
destinationType (String) destinationName (String) |
None |
Create destination with specified type and name Equivalent to create(destinationType, destinationName, null). See Table 3–46 for possible values of destinationType. |
|
destinationType (String) destinationName (String) |
None |
Destroy destination See Table 3–46 for possible values of destinationType. |
|
pauseType (String) |
None |
Pause message delivery for all destinations See Table 3–47 for possible values of pauseType. |
|
None |
None |
Pause all message delivery for all destinations Equivalent to pause(DestinationPauseType.ALL). |
|
None |
None |
Resume message delivery for all destinations |
|
None |
None |
Compact all destinations Note – Only paused destinations can be compacted. |
Table 3–46 shows the possible values for the create and destroy operations' destinationType parameters. These values are defined as static constants in the utility class DestinationType.
Table 3–46 Destination Manager Configuration Type Values
Value |
Utility Constant |
Meaning |
---|---|---|
Queue (point-to-point) destination |
||
Topic (publish/subscribe) destination |
Table 3–47 shows the possible values for the pause operation's pauseType parameter. These values are defined as static constants in the utility class DestinationPauseType.
Table 3–47 Destination Manager Pause Types
Value |
Utility Constant |
Meaning |
---|---|---|
PRODUCERS |
Pause delivery from associated message producers |
|
CONSUMERS |
Pause delivery to associated message consumers |
|
ALL |
Pause all delivery |
The destination manager configuration MBean supports the notification shown in Table 3–48.
Table 3–48 Destination Manager Configuration Notification
Name |
Description |
---|---|
Attribute value changed |
Each broker has a single destination manager monitor MBean, used for managing all of the broker's destination monitor MBeans.
The destination manager monitor MBean has the following object name:
com.sun.messaging.jms.server:type=DestinationManager,subtype=Monitor
A string representing this object name is defined as a static constant DESTINATION_MANAGER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The destination manager monitor MBean has the attributes shown in Table 3–49. The names of these attributes are defined as static constants in the utility class DestinationAttributes.
Table 3–49 Destination Manager Monitor Attributes
The destination manager monitor MBean supports the operation shown in Table 3–50. The name of this operation is defined as a static constant in the utility class DestinationOperations.
Table 3–50 Destination Manager Monitor Operation
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
ObjectName[] |
Object names of destination monitor MBeans for all current destinations |
The destination manager monitor MBean supports the notifications shown in Table 3–51. These notifications are instances of the Message Queue JMX class DestinationNotification, and their names are defined as static constants in that class.
Table 3–51 Destination Manager Monitor Notifications
Name |
Utility Constant |
Description |
---|---|---|
Destination created |
||
Destination destroyed |
||
Destination paused |
||
Destination resumed |
||
Destination compacted |
||
Destination purged |
Table 3–52 shows the methods defined in class DestinationNotification for obtaining details about a destination manager monitor notification.
Table 3–52 Data Retrieval Methods for Destination Manager Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
String |
Destination name |
|
String |
Destination type See Table 3–46 for possible values. |
|
Boolean |
Administrator-created destination? |
|
String |
Pause type See Table 3–47 for possible values. |
This section describes the MBeans used for managing message producers:
The producer manager configuration MBean configures message producers.
The producer manager monitor MBean monitors message producers.
The following subsections describe each of these MBeans in detail.
Notice that there are no resource MBeans associated with individual message producers; rather, all producers are managed through the broker's global producer manager configuration and producer manager monitor MBeans.
Each broker has a single producer manager configuration MBean, used for configuring all of the broker's message producers.
The producer manager configuration MBean has the following object name:
com.sun.messaging.jms.server:type=ProducerManager,subtype=Config
A string representing this object name is defined as a static constant PRODUCER_MANAGER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The producer manager configuration MBean has the attribute shown in Table 3–53. The name of this attribute is defined as a static constant in the utility class ProducerAttributes.
Table 3–53 Producer Manager Configuration Attribute
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Current total number of message producers |
The producer manager configuration MBean supports the operation shown in Table 3–54. The name of this operation is defined as a static constant in the utility class ProducerOperations.
Table 3–54 Producer Manager Configuration Operation
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
String[] |
Each broker has a single producer manager monitor MBean, used for monitoring all of the broker's message producers.
The producer manager monitor MBean has the following object name:
com.sun.messaging.jms.server:type=ProducerManager,subtype=Monitor
A string representing this object name is defined as a static constant PRODUCER_MANAGER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The producer manager monitor MBean has the attribute shown in Table 3–55. The name of this attribute is defined as a static constant in the utility class ProducerAttributes.
Table 3–55 Producer Manager Monitor Attribute
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Current total number of message producers |
|
Integer |
No |
Number of wildcard message producers associated with the broker |
The producer manager monitor MBean supports the operations shown in Table 3–56. The names of these operations are defined as static constants in the utility class ProducerOperations.
Table 3–56 Producer Manager Monitor Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
String[] | ||
producerID (String) |
CompositeData |
Descriptive information about message producer The desired producer is designated by its producer identifier (producerID). The value returned is a JMX CompositeData object describing the producer; see Table 3–57 for lookup keys used with this object. |
|
None |
CompositeData[] |
Descriptive information about all current message producers The value returned is an array of JMX CompositeData objects describing the producers; see Table 3–57 for lookup keys used with these objects. |
|
none |
String[] |
Wildcard strings used by current producers associated with the broker |
|
wildcard-String |
Integer |
Number of current producers associated with the broker that are using the specified wildcard string |
The getProducerInfoByID and getProducerInfo operations return objects implementing the JMX interface CompositeData, which maps lookup keys to associated data values. The keys shown in Table 3–57 are defined as static constants in the utility class ProducerInfo for use with these objects.
Table 3–57 Lookup Keys for Message Producer Information
Name |
Value Type |
Description |
---|---|---|
String | ||
String |
Name of associated connection service |
|
ConnectionID |
String | |
String |
Connection's host name |
|
String |
Connection's user name |
|
String |
Name of associated destination |
|
String[] |
Destination names that match wildcards used by wildcard producers For topic destinations only. |
|
Boolean |
Wildcard producer? For topic destinations only. |
|
String |
Type of associated destination See Table 3–58 for possible values. |
|
Boolean |
Message delivery paused? |
|
Long |
Number of messages sent |
Table 3–58 shows the possible values returned for the lookup key DestinationType. These values are defined as static constants in the utility class DestinationType.
Table 3–58 Message Producer Destination Types
Value |
Utility Constant |
Meaning |
---|---|---|
Queue (point-to-point) destination |
||
Topic (publish/subscribe) destination |
This section describes the MBeans used for managing message consumers:
The consumer manager configuration MBean configures message consumers.
The consumer manager monitor MBean monitors message consumers.
The following subsections describe each of these MBeans in detail.
Notice that there are no resource MBeans associated with individual message consumers; rather, all consumers are managed through the broker's global consumer manager configuration and consumer manager monitor MBeans.
Each broker has a single consumer manager configuration MBean, used for configuring all of the broker's message consumers.
The consumer manager configuration MBean has the following object name:
com.sun.messaging.jms.server:type=ConsumerManager,subtype=Config
A string representing this object name is defined as a static constant CONSUMER_MANAGER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The consumer manager configuration MBean has the attribute shown in Table 3–59. The name of this attribute is defined as a static constant in the utility class ConsumerAttributes.
Table 3–59 Consumer Manager Configuration Attribute
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Current total number of message consumers |
The consumer manager configuration MBean supports the operations shown in Table 3–60. The names of these operations are defined as static constants in the utility class ConsumerOperations.
Table 3–60 Consumer Manager Configuration Operations
Each broker has a single consumer manager monitor MBean, used for monitoring all of the broker's message consumers.
The consumer manager monitor MBean has the following object name:
com.sun.messaging.jms.server:type=ConsumerManager,subtype=Monitor
A string representing this object name is defined as a static constant CONSUMER_MANAGER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The consumer manager monitor MBean has the attribute shown in Table 3–61. The name of this attribute is defined as a static constant in the utility class ConsumerAttributes.
Table 3–61 Consumer Manager Monitor Attribute
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Current total number of message consumers |
|
Integer |
No |
Number of wildcard message consumers associated with the broker |
The consumer manager monitor MBean supports the operations shown in Table 3–62. The names of these operations are defined as static constants in the utility class ConsumerOperations.
Table 3–62 Consumer Manager Monitor Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
String[] | ||
consumerID (String) |
CompositeData |
Descriptive information about message consumer The desired consumer is designated by its consumer identifier (consumerID). The value returned is a JMX CompositeData object describing the consumer; see Table 3–63 for lookup keys used with this object. |
|
None |
CompositeData[] |
Descriptive information about all current message consumers The value returned is an array of JMX CompositeData objects describing the consumers; see Table 3–63 for lookup keys used with these objects. |
|
none |
String[] |
Wildcard strings used by current consumers associated with the broker |
|
wildcard-String |
Integer |
Number of current consumers associated with the broker that are using the specified wildcard string |
The getConsumerInfoByID and getConsumerInfo operations return objects implementing the JMX interface CompositeData, which maps lookup keys to associated data values. The keys shown in Table 3–63 are defined as static constants in the utility class ConsumerInfo for use with these objects.
Table 3–63 Lookup Keys for Message Consumer Information
Name |
Value Type |
Description |
---|---|---|
String | ||
String |
Message selector |
|
String |
Name of associated connection service |
|
String | ||
String |
Connection's host name |
|
String |
Connection's user name |
|
String |
Name of associated destination |
|
String[] |
Destination names that match wildcards used by wildcard consumers For topic destinations only. |
|
Boolean |
Wildcard consumer? For topic destinations only. |
|
String |
Type of associated destination See Table 3–64 for possible values. |
|
Integer |
Acknowledgment mode of associated session See Table 3–65 for possible values. |
|
String |
String representation of acknowledgment mode Useful for displaying the acknowledgment mode in human-readable form, such as in the Java Monitoring and Management Console (jconsole). See Table 3–65 for possible values. |
|
Boolean |
Durable topic subscriber? |
|
String |
Subscription name |
|
String |
Client identifier |
|
Boolean |
Subscriber active? |
|
Boolean |
Message delivery paused? |
|
Long |
Cumulative number of messages that have been dispatched to consumer (includes messages that have been delivered and those waiting to be delivered) |
|
Long |
Current number of messages that have been dispatched to consumer and are being held in broker memory and persistent store (includes messages that have been delivered and those waiting to be delivered) |
|
Long |
Current number of messages that have been delivered to consumer and are being held in broker memory and persistent store pending acknowledgment |
|
Long |
JMS Message ID of the next message to be delivered to consumer |
|
Long |
Time of last acknowledgment, in standard Java format (milliseconds since January 1, 1970, 00:00:00 UTC) |
Table 3–64 shows the possible values returned for the lookup key DestinationType. These values are defined as static constants in the utility class DestinationType.
Table 3–64 Message Consumer Destination Types
Value |
Utility Constant |
Meaning |
---|---|---|
Queue (point-to-point) destination |
||
Topic (publish/subscribe) destination |
Table 3–65 shows the possible values returned for the lookup keys AcknowledgeMode and AcknowledgeModeLabel. Four of these values are defined as static constants in the standard JMS interface javax.jms.Session; the fifth (NO_ACKNOWLEDGE) is defined in the extended Message Queue version of the interface, com.sun.messaging.jms.Session.
Table 3–65 Acknowledgment Modes
Value |
Utility Constant |
String Representation |
Meaning |
---|---|---|---|
1 |
AUTO_ACKNOWLEDGE |
Auto-acknowledge mode |
|
2 |
CLIENT_ACKNOWLEDGE |
Client-acknowledge mode |
|
3 |
DUPS_OK_ACKNOWLEDGE |
Dups-OK-acknowledge mode |
|
32768 |
NO_ACKNOWLEDGE |
No-acknowledge mode |
|
0 |
SESSION_TRANSACTED |
Session is transacted (acknowledgment mode ignored) |
This section describes the MBeans used for managing transactions:
The transaction manager configuration MBean configures transactions.
The transaction manager monitor MBean monitors transactions.
The following subsections describe each of these MBeans in detail.
Notice that there are no resource MBeans associated with individual transactions; rather, all transactions are managed through the broker's global transaction manager configuration and transaction manager monitor MBeans.
Each broker has a single transaction manager configuration MBean, used for configuring all of the broker's transactions.
The transaction manager configuration MBean has the following object name:
com.sun.messaging.jms.server:type=TransactionManager,subtype=Config
A string representing this object name is defined as a static constant TRANSACTION_MANAGER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The transaction manager configuration MBean has the attribute shown in Table 3–66. The name of this attribute is defined as a static constant in the utility class TransactionAttributes.
Table 3–66 Transaction Manager Configuration Attribute
Name |
Type |
Settable? |
Description |
---|---|---|---|
Integer |
No |
Current number of open transactions |
The transaction manager configuration MBean supports the operations shown in Table 3–67. The names of these operations are defined as static constants in the utility class TransactionOperations.
Table 3–67 Transaction Manager Configuration Operations
Each broker has a single transaction manager monitor MBean, used for monitoring all of the broker's transactions.
The transaction manager monitor MBean has the following object name:
com.sun.messaging.jms.server:type=TransactionManager,subtype=Monitor
A string representing this object name is defined as a static constant TRANSACTION_MANAGER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The transaction manager monitor MBean has the attributes shown in Table 3–68. The names of these attributes are defined as static constants in the utility class TransactionAttributes.
Table 3–68 Transaction Manager Monitor Attributes
Name |
Type |
Settable? |
Description |
Integer |
No |
Current number of open transactions |
|
Long |
No |
Cumulative number of transactions committed since broker started |
|
Long |
No |
Cumulative number of transactions rolled back since broker started |
The transaction manager monitor MBean supports the operations shown in Table 3–69. The names of these operations are defined as static constants in the utility class TransactionOperations.
Table 3–69 Transaction Manager Monitor Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
String[] | ||
transactionID (String) |
CompositeData |
Descriptive information about transaction The desired transaction is designated by its transaction identifier (transactionID). The value returned is a JMX CompositeData object describing the transaction; see Table 3–70 for lookup keys used with this object. |
|
None |
CompositeData[] |
Descriptive information about all current open transactions The value returned is an array of JMX CompositeData objects describing the transactions; see Table 3–70 for lookup keys used with these objects. |
The getTransactionInfoByID and getTransactionInfo operations return objects implementing the JMX interface CompositeData, which maps lookup keys to associated data values. The keys shown in Table 3–70 are defined as static constants in the utility class TransactionInfo for use with these objects.
Table 3–70 Lookup Keys for Transaction Information
Name |
Value Type |
Description |
---|---|---|
String | ||
String | ||
String |
User name |
|
String |
Client identifier |
|
String |
Connection string |
|
Long |
Time created, in standard Java format (milliseconds since January 1, 1970, 00:00:00 UTC) |
|
Integer |
Current state See Table 3–71 for possible values. |
|
String |
String representation of current state Useful for displaying the state in human-readable form, such as in the Java Monitoring and Management Console (jconsole). See Table 3–71 for possible values. |
|
Long |
Number of messages |
|
Long |
Number of acknowledgments |
Table 3–71 shows the possible values returned for the lookup keys State and StateLabel. These values are defined as static constants in the utility class TransactionState.
Table 3–71 Transaction State Values
The transaction manager monitor MBean supports the notifications shown in Table 3–72. These notifications are instances of the Message Queue JMX class TransactionNotification, and their names are defined as static constants in that class.
Table 3–72 Transaction Manager Monitor Notifications
Name |
Utility Constant |
Description |
---|---|---|
Transaction has entered prepared state |
||
Transaction committed |
||
Transaction rolled back |
Table 3–73 shows the method defined in class TransactionNotification for obtaining details about a transaction manager monitor notification.
Table 3–73 Data Retrieval Method for Transaction Manager Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
String |
This section describes the MBeans used for managing broker clusters:
The cluster configuration MBean configures a broker's cluster-related properties.
The cluster monitor MBean monitors the brokers in a cluster.
The following subsections describe each of these MBeans in detail.
The cluster configuration MBean is used for configuring a broker's cluster-related properties. There is one such MBean for each broker.
The cluster configuration MBean has the following object name:
com.sun.messaging.jms.server:type=Cluster,subtype=Config
A string representing this object name is defined as a static constant CLUSTER_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The cluster configuration MBean has the attributes shown in Table 3–74. The names of these attributes are defined as static constants in the utility class ClusterAttributes.
Table 3–74 Cluster Configuration Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
Boolean |
No | ||
String |
No |
Must be a unique alphanumeric string of no more than n - 13 characters, where n is the maximum table name length allowed by the database. No two running clusters may have the same cluster identifier. This string is appended to the names of all database tables in the cluster’s shared persistent store. Note – For brokers belonging to an HA cluster, this attribute is used in database table names in place of BrokerID (see Table 3–1). |
|
String |
Yes |
URL of cluster configuration file |
|
CompositeData |
No |
Descriptive information about local broker The value returned is a JMX CompositeData object describing the broker; see Table 3–76 for lookup keys used with this object. |
|
CompositeData |
No |
Descriptive information about master broker The value returned is a JMX CompositeData object describing the master broker; see Table 3–76 for lookup keys used with this object. |
The cluster configuration MBean supports the operations shown in Table 3–75. The names of these operations are defined as static constants in the utility class ClusterOperations.
Table 3–75 Cluster Configuration Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
String[] |
Addresses of brokers in cluster Each address specifies the host name and Port Mapper port number of a broker in the cluster, in the form hostName:portNumber. Example: host1:3000 For conventional clusters, the list includes all brokers specified by the broker property imq.cluster.brokerlist. For HA clusters, it includes all active and inactive brokers in the cluster table stored in the HA database. |
|
None |
String[] |
Broker identifiers of brokers in cluster The list includes all active and inactive brokers in the cluster table stored in the HA database. |
|
brokerAddress (String) |
CompositeData |
Descriptive information about broker The desired broker is designated by its host name and Port Mapper port number (brokerAddress), in the form hostName:portNumber. The value returned is a JMX CompositeData object describing the broker; see Table 3–76 for lookup keys used with this object. |
|
brokerID (String) |
CompositeData |
Descriptive information about broker The desired broker is designated by its broker identifier (brokerID). The value returned is a JMX CompositeData object describing the broker; see Table 3–76 for lookup keys used with this object. For conventional clusters, the operation returns null. |
|
None |
CompositeData[] |
Descriptive information about all brokers in cluster The value returned is an array of JMX CompositeData objects describing the brokers; see Table 3–76 for lookup keys used with these objects. For conventional clusters, the array includes all brokers specified by the broker property imq.cluster.brokerlist. For HA clusters, it includes all active and inactive brokers in the cluster table stored in the HA database. |
|
None |
None |
Reload cluster configuration file |
The LocalBrokerInfo and MasterBrokerInfo attributes and the getBrokerInfoByAddress, getBrokerInfoByID, and getBrokerInfo operations return objects implementing the JMX interface CompositeData, which maps lookup keys to associated data values. The keys shown in Table 3–76 are defined as static constants in the utility class BrokerClusterInfo for use with these objects.
Table 3–76 Lookup Keys for Cluster Configuration Information
Key |
Value Type |
Description |
---|---|---|
String |
Broker address, in the form hostName:portNumber Example: host1:3000 |
|
String |
The cluster configuration MBean supports the notification shown in Table 3–77.
Table 3–77 Cluster Configuration Notification
Name |
Description |
---|---|
Attribute value changed |
The cluster monitor MBean is used for monitoring the brokers in a cluster. There is one such MBean for each broker.
The cluster monitor MBean has the following object name:
com.sun.messaging.jms.server:type=Cluster,subtype=Monitor
A string representing this object name is defined as a static constant CLUSTER_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The cluster monitor MBean has the attributes shown in Table 3–78. The names of these attributes are defined as static constants in the utility class ClusterAttributes.
Table 3–78 Cluster Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
Boolean |
No | ||
String |
No |
Must be a unique alphanumeric string of no more than n - 13 characters, where n is the maximum table name length allowed by the database. No two running clusters may have the same cluster identifier. This string is appended to the names of all database tables in the cluster’s shared persistent store. Note – For brokers belonging to an HA cluster, this attribute is used in database table names in place of BrokerID (see Table 3–4). |
|
String |
Yes |
URL of cluster configuration file |
|
CompositeData |
No |
Descriptive information about local broker The value returned is a JMX CompositeData object describing the broker; see Table 3–80 for lookup keys used with this object. |
|
CompositeData |
No |
Descriptive information about master broker The value returned is a JMX CompositeData object describing the master broker; see Table 3–80 for lookup keys used with this object. |
The cluster monitor MBean supports the operations shown in Table 3–79. The names of these operations are defined as static constants in the utility class ClusterOperations.
Table 3–79 Cluster Monitor Operations
Name |
Parameters |
Result Type |
Description |
---|---|---|---|
None |
String[] |
Addresses of brokers in cluster Each address specifies the host name and Port Mapper port number of a broker in the cluster, in the form hostName:portNumber. Example: host1:3000 For conventional clusters, the list includes all brokers specified by the broker property imq.cluster.brokerlist. For HA clusters, it includes all active and inactive brokers in the cluster table stored in the HA database. |
|
None |
String[] |
Broker identifiers of brokers in cluster The list includes all active and inactive brokers in the cluster table stored in the HA database. |
|
brokerAddress (String) |
CompositeData |
Descriptive information about broker The desired broker is designated by its host name and Port Mapper port number (brokerAddress), in the form hostName:portNumber. The value returned is a JMX CompositeData object describing the broker; seeTable 3–80 for lookup keys used with this object. |
|
brokerID (String) |
CompositeData |
Descriptive information about broker The desired broker is designated by its broker identifier (brokerID). The value returned is a JMX CompositeData object describing the broker; seeTable 3–80 for lookup keys used with this object. For conventional clusters, the operation returns null. |
|
None |
CompositeData[] |
Descriptive information about all brokers in cluster The value returned is an array of JMX CompositeData objects describing the brokers; see Table 3–80 for lookup keys used with these objects. For conventional clusters, the array includes all brokers specified by the broker property imq.cluster.brokerlist. For HA clusters, it includes all active and inactive brokers in the cluster table stored in the HA database. |
The LocalBrokerInfo and MasterBrokerInfo attributes and the getBrokerInfoByAddress, getBrokerInfoByID, and getBrokerInfo operations return objects implementing the JMX interface CompositeData, which maps lookup keys to associated data values. The keys shown in Table 3–80 are defined as static constants in the utility class BrokerClusterInfo for use with these objects.
Table 3–80 Lookup Keys for Cluster Monitor Information
Key |
Value Type |
Description |
---|---|---|
String |
Broker address, in the form hostName:portNumber Example: host1:3000 |
|
String | ||
Integer |
Current state of broker See Table 3–81 for possible values. |
|
String |
String representation of current broker state Useful for displaying the state in human-readable form, such as in the Java Monitoring and Management Console (jconsole). See Table 3–81 for possible values. |
|
String |
Broker identifier of broker that has taken over this broker's persistent data store |
|
Long |
Current number of messages stored in memory and persistent store |
|
Long |
Time of last status update, in standard Java format (milliseconds since January 1, 1970, 00:00:00 UTC) Used to determine whether a broker is running. The interval at which a broker updates its status can be configured with the broker property imq.cluster.monitor.interval. |
Table 3–81 shows the possible values returned for the lookup keys State and StateLabel. These values are defined as static constants in the utility class BrokerState.
Table 3–81 Broker State Values
The cluster monitor MBean supports the notifications shown in Table 3–82. These notifications are instances of the Message Queue JMX classes ClusterNotification and BrokerNotification, and their names are defined as static constants in those classes.
Table 3–82 Cluster Monitor Notifications
Table 3–83 shows the methods defined in class ClusterNotification for obtaining details about a cluster monitor notification. See Table 3–6 for the corresponding methods of class BrokerNotification.
Table 3–83 Data Retrieval Methods for Cluster Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
Boolean | ||
String | ||
String | ||
String |
Address of affected broker, in the form hostName:portNumber Example: host1:3000 |
|
Boolean |
Master broker affected? |
This section describes the MBeans used for logging Message Queue operations:
The log configuration MBean configures Message Queue logging.
The log monitor MBean monitors Message Queue logging.
The following subsections describe each of these MBeans in detail.
Each broker has a single log configuration MBean, used for configuring Message Queue logging.
The log configuration MBean has the following object name:
com.sun.messaging.jms.server:type=Log,subtype=Config
A string representing this object name is defined as a static constant LOG_CONFIG_MBEAN_NAME in the utility class MQObjectName.
The log configuration MBean has the attributes shown in Table 3–84. The names of these attributes are defined as static constants in the utility class LogAttributes.
Table 3–84 Log Configuration Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
String |
Yes |
Logging level Specifies the categories of logging information that can be written to an output channel. See Table 3–85 for possible values. |
|
Long |
Yes |
File length, in bytes, at which output rolls over to a new log file A value of -1 denotes an unlimited number of bytes (no rollover based on file length). |
|
Long |
Yes |
Age of file, in seconds, at which output rolls over to a new log file A value of -1 denotes an unlimited number of seconds (no rollover based on file age). |
Table 3–85 shows the possible values for the Level attribute. Each level includes those above it (for example, WARNING includes ERROR). These values are defined as static constants in the utility class LogLevel.
Table 3–85 Log Configuration Logging Levels
Name |
Utility Constant |
Meaning |
---|---|---|
NONE |
No logging |
|
ERROR |
Log error messages |
|
WARNING |
Log warning messages |
|
INFO |
Log informational messages |
|
UNKNOWN |
Logging level unknown |
The log configuration MBean supports the notification shown in Table 3–86.
Table 3–86 Log Configuration Notification
Name |
Description |
---|---|
Attribute value changed |
Each broker has a single log monitor MBean, used for monitoring Message Queue logging.
The log monitor MBean has the following object name:
com.sun.messaging.jms.server:type=Log,subtype=Monitor
A string representing this object name is defined as a static constant LOG_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The log monitor MBean supports the notifications shown in Table 3–87. These notifications are instances of the Message Queue JMX class LogNotification, and their names are defined as static utility constants in that class.
A notification listener registered for a particular logging level will receive notifications only for that level and not for those above or below it: for example, a listener registered for the notification mq.log.level.WARNING will be notified only of WARNING messages and not ERROR or INFO. To receive notifications for more than one logging level, the listener must be explicitly registered for each level separately.
Name |
Utility Constant |
Description |
---|---|---|
Error message logged |
||
Warning message logged |
||
Informational message logged |
Table 3–88 shows the methods defined in class LogNotification for obtaining details about a log monitor notification.
Table 3–88 Data Retrieval Methods for Log Monitor Notifications
Method |
Result Type |
Description |
---|---|---|
String |
Logging level of logged message See Table 3–85 for possible values. |
|
String |
Body of logged message |
This section describes the MBean used for monitoring the Java Virtual Machine (JVM):
The JVM monitor MBean monitors the Java Virtual Machine.
The following subsection describes this MBean in detail.
Each broker has a single JVM monitor MBean, used for monitoring the Java Virtual Machine (JVM).
This MBean is useful only with the Java Development Kit (JDK) version 1.4 or lower. JDK version 1.5 includes built-in MBeans that provide more detailed information on the state of the JVM.
The JVM monitor MBean has the following object name:
com.sun.messaging.jms.server:type=JVM,subtype=Monitor
A string representing this object name is defined as a static constant JVM_MONITOR_MBEAN_NAME in the utility class MQObjectName.
The JVM monitor MBean has the attributes shown in Table 3–89. The names of these attributes are defined as static constants in the utility class JVMAttributes.
Table 3–89 JVM Monitor Attributes
Name |
Type |
Settable? |
Description |
---|---|---|---|
Long |
No |
Current total memory, in bytes |
|
Long |
No |
Initial heap size at JVM startup, in bytes |
|
Long |
No |
Amount of memory currently available for use, in bytes |
|
Long |
No |
Maximum allowable heap size, in bytes Any memory allocation attempt that would exceed this limit will cause an OutOfMemoryError exception to be thrown. |