JMSServerRuntimeMBean
Overview | Related MBeans | Attributes | Operations
Overview
This class is used for monitoring a WebLogic JMS server.
Fully Qualified Interface Name If you use the getMBeanInfo operation in MBeanTypeServiceMBean, supply the following value as this MBean's fully qualified interface name:
weblogic.management.runtime.JMSServerRuntimeMBean
Factory Methods No factory methods. Instances of this MBean are created automatically.
Related MBeans
This section describes attributes that provide access to other MBeans. For more information about the MBean hierarchy, refer to WebLogic Server MBean Data Model.
Destinations
An array of destinations on this JMS server.
Factory Methods No explicit creator method. The child shares the lifecycle of its parent. Privileges Read only Type JMSDestinationRuntimeMBean[] Relationship type: Containment.
SessionPoolRuntimes
The session pools running on this JMS server.
Factory Methods No explicit creator method. The child shares the lifecycle of its parent. Privileges Read only Type JMSSessionPoolRuntimeMBean[] Relationship type: Containment.
Attributes
This section describes the following attributes:
BytesCurrentCount
The current number of bytes stored on this JMS server.
This number does not include the pending bytes.
Privileges Read only Type long
BytesHighCount
The peak number of bytes stored in the JMS server since the last reset.
Privileges Read only Type long
BytesPageableCurrentCount
Return the total number of bytes in all the messages that are currently available to be paged out, but which have not yet been paged out. The JMS server attempts to keep this number smaller than the "MessageBufferSize" parameter.
Privileges Read only Type long
BytesPagedInTotalCount
Return the total number of bytes that were read from the paging directory since the JMS server was started.
Privileges Read only Type long
BytesPagedOutTotalCount
Return the total number of bytes that were written to the paging directory since the JMS server was started.
Privileges Read only Type long
BytesPendingCount
The current number of bytes pending (unacknowledged or uncommitted) stored on this JMS server.
Pending bytes are over and above the current number of bytes.
Privileges Read only Type long
BytesReceivedCount
The number of bytes received on this JMS server since the last reset.
Privileges Read only Type long
BytesThresholdTime
The amount of time in the threshold condition since the last reset.
Privileges Read only Type long
CachingDisabled
Private property that disables caching in proxies.
Privileges Read only Type boolean
ConsumptionPaused
Returns the current consumption paused state of the JMSServer as boolean value.
Privileges Read only Type boolean
ConsumptionPausedState
Returns the current consumption paused state of the JMSServer as string value.
Privileges Read only Type java.lang.String
DestinationsCurrentCount
The current number of destinations for this JMS server.
Privileges Read only Type long
DestinationsHighCount
The peak number of destinations on this JMS server since the last reset.
Privileges Read only Type long
DestinationsTotalCount
The number of destinations instantiated on this JMS server since the last reset.
Privileges Read only Type long
HealthState
The health state of this JMS server.
Privileges Read only Type weblogic.health.HealthState
InsertionPaused
Returns the current insertion paused state of the JMSServer as boolean value.
Privileges Read only Type boolean
InsertionPausedState
Returns the current insertion paused state of the JMSServer as string value.
Privileges Read only Type java.lang.String
MBeanInfo
Returns the MBean info for this MBean.
Deprecated.
Privileges Read only Type javax.management.MBeanInfo
MessagesCurrentCount
The current number of messages stored on this JMS server. This number does not include the pending messages.
Privileges Read only Type long
MessagesHighCount
The peak number of messages stored in the JMS server since the last reset.
Privileges Read only Type long
MessagesPageableCurrentCount
Return the number of messages that are currently available for paging in this JMS server but have not yet been paged out. Note that due to internal implementation details, this count may be zero even if "PageableByteCurrentCount" is zero.
Privileges Read only Type int
MessagesPagedInTotalCount
Return the total number of messages that were read from the paging directory since the JMS server was started.
Privileges Read only Type int
MessagesPagedOutTotalCount
Return the total number of messages that were written to the paging directory since the JMS server was started.
Privileges Read only Type int
MessagesPendingCount
The current number of messages pending (unacknowledged or uncommitted) stored on this JMS server.
Pending messages are over and above the current number of messages.
Privileges Read only Type long
MessagesReceivedCount
The number of messages received on this destination since the last reset.
Privileges Read only Type long
MessagesThresholdTime
The amount of time in the threshold condition since the last reset.
Privileges Read only Type long
Name of
Name of configuration. WebLogic Server uses an MBean to implement and persist the configuration.
Privileges Read only Type java.lang.String
ObjectName
Returns the ObjectName under which this MBean is registered in the MBean server.
Deprecated.
Privileges Read only Type weblogic.management.WebLogicObjectName
Parent
Return the immediate parent for this MBean
Privileges Read/Write Type
PendingTransactions
Returns an array of Xids representing transaction branches that exist onthis JMS server in the pending state, i.e. branches that have been prepared by the transaction manager but not yet committed or rolled back.
For more information, see:
Privileges Read only Type class java.lang.String[]
ProductionPaused
Returns the current production paused state of the JMSServer as boolean value.
Privileges Read only Type boolean
ProductionPausedState
Returns the current production paused state of the JMSServer as string value.
Privileges Read only Type java.lang.String
Registered
Returns false if the the MBean represented by this object has been unregistered.
Deprecated.
Privileges Read only Type boolean
SessionPoolsCurrentCount
The current number of session pools instantiated on this JMS server.
Privileges Read only Type long
SessionPoolsHighCount
The peak number of session pools instantiated on this JMS server since the last reset.
Privileges Read only Type long
SessionPoolsTotalCount
The number of session pools instantiated on this JMS server since the last reset.
Privileges Read only Type long
Transactions
Returns an array of Xids representing transaction branches that exist on this JMS server in any state.
For more information, see:
Privileges Read only Type class java.lang.String[]
Type
Returns the type of the MBean.
Privileges Read only Type java.lang.String
Operations
This section describes the following operations:
closeCursor
Releases the server-side resources associated with the cursor and removes the runtime MBean instance.
Operation Name "closeCursor"
Parameters Object [] { cursorHandle }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The cursor handle.
Signature String [] { "java.lang.String" }
Returns Void
Exceptions
weblogic.management.ManagementException
forceCommit
Causes the work associated with the specified transaction branch to be committed.
Operation Name "forceCommit"
Parameters Object [] { xid }
where:
xid is an object of type
java.lang.String that specifies:
An xid in string representation for a JMS transaction branch.
Signature String [] { "java.lang.String" }
Returns Void
Exceptions
weblogic.management.ManagementException
forceRollback
Causes the work associated with the specified transaction branch to be rolled back.
Operation Name "forceRollback"
Parameters Object [] { xid }
where:
xid is an object of type
java.lang.String that specifies:
An xid in string representation for a JMS transaction branch.
Signature String [] { "java.lang.String" }
Returns Void
Exceptions
weblogic.management.ManagementException
getCursorEndPosition
Returns the cursor end position in the result set.
Operation Name "getCursorEndPosition"
Parameters Object [] { cursorHandle }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The cursor handle.
Signature String [] { "java.lang.String" }
Returns Long
Exceptions
weblogic.management.ManagementException
getCursorSize
Returns the number of items in the result set.
Operation Name "getCursorSize"
Parameters Object [] { cursorHandle }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The cursor handle.
Signature String [] { "java.lang.String" }
Returns Long
Exceptions
weblogic.management.ManagementException
getCursorStartPosition
Returns the cursor start position in the result set.
Operation Name "getCursorStartPosition"
Parameters Object [] { cursorHandle }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The cursor handle.
Signature String [] { "java.lang.String" }
Returns Long
Exceptions
weblogic.management.ManagementException
getItems
Returns an array of items from the specified cursor location. The new cursor start position will be the location after the old cursor end position. The size of the array returned is determined by the count argument. An array smaller than the "count" value is returned if there are fewer items from the specified start position to the end of the result set. A null value is returned if the size of the return array is zero. In this case, the cursor position will not change.
For more information, see:
Operation Name "getItems"
Parameters Object [] { cursorHandle, start, count }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The cursor handle.
start is an object of type
java.lang.Long that specifies:
The new cursor start location.
count is an object of type
java.lang.Integer that specifies:
The maximum number of items to return.
Signature String [] { "java.lang.String", "java.lang.Long", "java.lang.Integer" }
Returns class
Exceptions
weblogic.management.ManagementException
getMessage
Given a JMS message ID this method returns the corresponding message from the queue. If no message with the specified message ID exists on the destination, a null value is returned.
For more information, see:
Operation Name "getMessage"
Parameters Object [] { cursorHandle, messageID }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The handle of the cursor.
messageID is an object of type
java.lang.String that specifies:
The JMS message ID of the requested message.
Signature String [] { "java.lang.String", "java.lang.String" }
Returns CompositeData
Exceptions
weblogic.management.ManagementException
getMessage
Returns the message associated with the specified cursor handle.
For more information, see:
Operation Name "getMessage"
Parameters Object [] { cursorHandle, messageHandle }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The handle of the cursor.
messageHandle is an object of type
java.lang.Long that specifies:
The handle of the message within the cursor.
Signature String [] { "java.lang.String", "java.lang.Long" }
Returns CompositeData
Exceptions
weblogic.management.ManagementException
ManagementException Thrown when an error occurs while performing the operation.
getMessages
Returns a set of messages that are associated with a JMS transaction branch. Note that the result set is returned to the caller in the form of a message cursor that may contain messages from several destinations on this JMS server. The timeout parameter specifies the amount of time in seconds for which the cursor is valid. Upon timeout expiration the cursor is invalidated and the associated resources released.
For more information, see:
Operation Name "getMessages"
Parameters Object [] { xid, timeoutSeconds }
where:
xid is an object of type
java.lang.String that specifies:
An Xid in string representation for a JMS transaction branch.
timeoutSeconds is an object of type
java.lang.Integer that specifies:
The last access timeout for the cursor. The cursor resources will be reclaimed if it is not accessed within the specified time interval. A value of 0 indicates no timeout.
Signature String [] { "java.lang.String", "java.lang.Integer" }
Returns String
Exceptions
weblogic.management.ManagementException
getNext
Returns an array of items starting from the current cursor end position. The new cursor start position is set to be the location of the first item returned to the caller. The new cursor end position is set according to the size of the array returned, which is determined by the count argument. An array smaller than the "count" value is returned if there are fewer items from the specified start position to the end of the result set. A null value is returned if the size of the array is zero. In this case, the cursor position will not change.
For more information, see:
Operation Name "getNext"
Parameters Object [] { cursorHandle, count }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The cursor handle.
count is an object of type
java.lang.Integer that specifies:
The maximum number of items to return.
Signature String [] { "java.lang.String", "java.lang.Integer" }
Returns class
Exceptions
weblogic.management.ManagementException
getPrevious
Returns an array of items up to the current cursor start position. The new start position will be placed at the location of the first item in the set returned to the caller. The new cursor end position will be placed at the location after the last item in the set that is returned.
For more information, see:
Operation Name "getPrevious"
Parameters Object [] { cursorHandle, count }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The cursor handle.
count is an object of type
java.lang.Integer that specifies:
The maximum number of item to return.
Signature String [] { "java.lang.String", "java.lang.Integer" }
Returns class
Exceptions
weblogic.management.ManagementException
getTransactionStatus
Given an Xid this method returns the JTA status of the associated JMS transaction branch.
For more information, see:
Operation Name "getTransactionStatus"
Parameters Object [] { xid }
where:
xid is an object of type
java.lang.String that specifies:
An Xid in string representation for a JMS transaction branch.
Signature String [] { "java.lang.String" }
Returns Integer
pauseConsumption
Pauses the consumption operation on all the destinations hosted by the JMSServer.
When the JMSServer is paused for consumption, all of its destination's state is marked as "consumption paused" and all the new synchronous receive operations will block until the destination is resumed and there are messages available for consumption. All the synchronous receive with blocking timeout will block until the timeout happens during the consumption paused state.
All the asynchronous consumers attached to that destination will not get any messages delivered to them while the destination in "consumption paused" state.
After a successful consumption "pause" operation, the user has to explicitly "resume" the destination to allow for any further consume operations on that destination
Operation Name "pauseConsumption"
Parameters null
Signature null
Returns void
Exceptions
javax.jms.JMSException
pauseInsertion
Pauses the appearance of any messages on all the destinations of the JMSServer, that are result of the in-flight work completion on all the destinations hosted by this JMSServer.
Definition of In-Flight work
The definitions below are based on the current implementation of WebLogic JMS subsystem.
In-flight messages associated with Producers
UN-BORN MESSAGES
Messages that are produced by the producer, with "birth time" (TimeToDeliver) set in future are called un-born messages and are counted as "pending" messages in the destination statistics and are not available for consumers yet.
UN-COMMITTED MESSAGES
These are the messages that are produced by the producer as part of the transaction (using either user transaction or transacted session) and the transaction is still not committed or rolled back. These messages are also counted as "pending" messages in the destination statistics and are not available for consumption.
QUOTA BLOCKING SEND
These are the messages that are produced by the producers but are not able reach the destination because of (either message or byte or both) quota limit on the destination and the producers are willing to block for a specific period of time for the quota to be available. These messages are invisible to the system and are not counted against any of the destination statistics.
In-flight messages associated with Consumers
UN-ACKNOWLEDGED (CLIENT ACK PENDING) MESSAGES
These are the messages that are successfully consumed by the clients using a "client acknowledge" session, and are awaiting acknowledgements from the clients. These are "pending messages" which will be removed from the destination/system when the acknowledgement is received.
UN-COMMITTED MESSAGES
These are the messages that are consumed (received) by the clients within a transaction (using either user transaction or transacted session) and the transaction is still not committed or rolled back. When the clients successfully commit the transaction the messages get removed from the system.
ROLLED BACK MESSAGES
These are the messages that are put back on the destination because of a successful rollback of transactional receive by the consumers. These messages might or might not be ready for consumption (re-delivered) to the clients immediately, depending on the redelivery parameters, RedeliveryDelay and/or RedeliveryDelayOverride and RedeliveryLimit configured on the associated JMSConnectionFactory and JMSDestination respectively.
If there is a redelivery delay configured, then for that "delay" duration, the messages are not available for consumption and are counted as "pending" in the destination statistics and after the "delay" period, if the redelivery limit is not exceeded, then they are delivered (made available for consumption) on that destination and are counted as "current" messages in the destination statistics. If the redelivery limit exceeds, then those messages will be moved to the ErrorDestination, if one configured.
Another parameter that controls the availability of the rolled back messages is RedeliveryLimit.
RECOVERED MESSAGES
These messages are similar to ROLLED BACK MESSAGES discussed above. Except that these messages appear on the queue because of an explicit call to session "recover" by the client.
REDELIVERED MESSAGES
These are again similar to ROLLED BACK MESSAGES except that these messages may re-appear on the destination because of an un-successful delivery attempt to the client (consumer crash, close etc.).
For more information, see:
- JMSServerRuntimeMBean#resumeInsertion
- JMSServerRuntimeMBean#pauseProduction
- JMSServerRuntimeMBean#pauseConsumption
Operation Name "pauseInsertion"
Parameters null
Signature null
Returns void
Exceptions
javax.jms.JMSException
JMSException Thrown when an internal JMS error occurs while pausing the insertion.
pauseProduction
Pauses the new message production on all the destinations hosted by the JMSServer.
When the production paused, it would prevent any new produce operations from both new and existing producers attached to the destinations. When the destination is "resumed from production pause", all the new message production is allowed from both new and existing producers attached to that destination.
For more information, see:
- JMSServerRuntimeMBean#resumeProduction
- JMSServerRuntimeMBean#pauseInsertion
- JMSServerRuntimeMBean#pauseConsumption
Operation Name "pauseProduction"
Parameters null
Signature null
Returns void
Exceptions
javax.jms.JMSException
JMSException Thrown when an internal JMS error occurs while pausing the production.
preDeregister
Operation Name "preDeregister"
Parameters null
Signature null
Returns void
Exceptions
java.lang.Exception
resumeConsumption
Resumes the consumption operation on all the destinations hosted by the JMSSever.
The state of the destinations shall be marked as "consumption enabled" thus allowing all the "consuming" activity to continue normally.
Invoking this API on a JMSServer that is currently not in "consumption paused" state has no effect.
Operation Name "resumeConsumption"
Parameters null
Signature null
Returns void
Exceptions
javax.jms.JMSException
JMSException Thrown when an internal JMS error occurs while resuming the consumption.
resumeInsertion
Resumes the in-flight message production operation on all the destinations hosted by the JMSServer. The state of the JMSServer shall be marked as "insertion enabled" thus allowing all the messages from in-flight work completion are alloed to appear on the destinations. Invoking this API on a JMSServer that is currently not in "insertion paused" state has no effect.
Operation Name "resumeInsertion"
Parameters null
Signature null
Returns void
Exceptions
javax.jms.JMSException
JMSException Thrown when an internal JMS error occurs while resuming the insertion.
resumeProduction
Resumes the new message production operation on all the destinations hosted by the JMSServer. The state of the JMSServer shall be marked as "production enabled" thus allowing all the new "producing" activity to continue normally. Invoking this API on a JMSServer that is currently not in "production paused" state has no effect.
Operation Name "resumeProduction"
Parameters null
Signature null
Returns void
Exceptions
javax.jms.JMSException
JMSException Thrown when an internal JMS error occurs while resuming the production.
sort
Sorts the entire message result set managed by the cursor according to the JMS header attributes specified. The cursor position is set to the new position of the message corresponding to the "start" location before the sort is performed. The method returns the new cursor position.
For more information, see:
Operation Name "sort"
Parameters Object [] { cursorHandle, start, fields, ascending }
where:
cursorHandle is an object of type
java.lang.String that specifies:
The handle of the cursor.
start is an object of type
java.lang.Long that specifies:
The location of the message before the sort that will be the first message returned after the sort. A value of -1 will place the cursor start position at the head of the new sort order.
fields is an object of type
[Ljava.lang.String; that specifies:
The JMS header attributes on which to sort.
ascending is an object of type
[Ljava.lang.Boolean; that specifies:
Determines whether the sort of the corresponding fields element is in ascending or descending order.
Signature String [] { "java.lang.String", "java.lang.Long", "[Ljava.lang.String;", "[Ljava.lang.Boolean;" }
Returns Long
Exceptions
weblogic.management.ManagementException
ManagementException Thrown when an internal JMS error occurs while processing the request.