Java Management Extensions (JMX) is a technology that lets you implement management interfaces for Java applications. JConsole is a JMX-compliant monitoring tool, which comes with the Java Development Kit (JDK) 1.5 or later versions. Therefore, when you use a WSO2 product, JMX is enabled by default, which allows you to monitor the product using JConsole.
Info |
---|
Go to the WSO2 Administration Guide for detailed instructions on how to configure JMX for a WSO2 product and how to use JConsole for monitoring a product. |
MBeans for WSO2
...
EI
Tip |
---|
The common MBeans are explained in detail in the WSO2 Administration Guide. Listed below are the MBeans that are specific to WSO2 ESBEI. For details on using JMX based mediation flow statistics in your ESB EI server and detailed explanation of the relevant MBeans, see Monitoring JMX Based Statistics. |
...
This section summarizes the attributes and operations available for the following ESB WSO2 EI specific MBeans:
Table of Contents | ||||
---|---|---|---|---|
|
...
org.apache.synapse/PassThroughConnections/http-listener
org.apache.synapse/PassThroughConnections/http-sender
org.apache.synapse/PassThroughConnections/https-listener
org.apache.synapse/PassThroughConnections/https-sender
Attributes
Attribute Name | Description |
---|---|
ActiveConnections | Number of currently active connections. |
ActiveConnectionsPerHosts | A map of number of connections against hosts. |
LastXxxConnections | Number of connections created during last Xxx time period. |
RequestSizesMap | A map of number of requests against their sizes. |
ResponseSizesMap | A map of number of responses against their sizes. |
LastResetTime | Last time connection statistic recordings was reset. |
Operations
Operation Name | Description |
---|---|
reset() | Clear recorded connection statistics and restart recording. |
Latency MBeans
This view provides statistics of the latencies from all backend services connected through the HTTP and HTTPS transports. These statistics are provided as an aggregate value.
...
org.apache.synapse/PassthroughLatencyView/nio-http-http
org.apache.synapse/PassthroughLatencyView/nio-https-https
Attributes
Attribute Name | Description |
---|---|
AllTimeAvgLatency | Average latency since latency recording was last reset. |
LastxxxAvgLatency | Average latency for last xxx time period. For example, LastHourAvgLatency returns the average latency for the last hour. |
LastResetTime | Last time latency statistic recording was reset. |
Operations
Operation Name | Description |
---|---|
reset() | Clear recorded latency statistics and restart recording. |
Threading MBeans
These MBeans are only available in the NHTTP transport and not in the default Pass Through transport.
...
org.apache.synapse/Threading/HttpClientWorker
org.apache.synapse/Threading/HttpServerWorker
Attributes
Attribute Name | Description |
---|---|
TotalWorkerCount | Total worker threads related to this server/client. |
AvgUnblockedWorkerPercentage | Time-averaged unblocked worker thread percentage. |
AvgBlockedWorkerPercentage | Time-averaged blocked worker thread percentage. |
LastXxxBlockedWorkerPercentage | Blocked worker thread percentage averaged for last Xxx time period. |
DeadLockedWorkers | Number of deadlocked worker threads since last statistics reset. |
LastResetTime | Last time thread statistic recordings was reset. |
Operations
Operation Name | Description |
---|---|
reset() | Clear recorded thread statistic and restart recording. |
Transport MBeans
For each transport listener and sender enabled in the ESBWSO2 EI, there will be an MBean under the org.apache.axis2/Transport
domain. For example, when the JMS transport is enabled, the following MBean will be exposed:
...
org.apache.synapse/Transport/passthru-http-receiver
org.apache.synapse/Transport/passthru-http-sender
org.apache.synapse/Transport/passthru-https-receiver
org.apache.synapse/Transport/passthru-https-sender
Attributes
Attribute Name | Description |
---|---|
ActiveThreadCount | Threads active in this transport listener/sender. |
AvgSizeReceived | Average size of received messages. |
AvgSizeSent | Average size of sent messages. |
BytesReceived | Number of bytes received through this transport. |
BytesSent | Number of bytes sent through this transport. |
FaultsReceiving | Number of faults encountered while receiving. |
FaultsSending | Number of faults encountered while sending. |
LastResetTime | Last time transport listener/sender statistic recording was reset. |
MaxSizeReceived | Maximum message size of received messages. |
MaxSizeSent | Maximum message size of sent messages. |
MetricsWindow | Time difference between current time and last reset time in milliseconds. |
MinSizeReceived | Minimum message size of received messages. |
MinSizeSent | Minimum message size of sent messages. |
MessagesReceived | Total number of messages received through this transport. |
MessagesSent | Total number of messages sent through this transport. |
QueueSize | Number of messages currently queued. Messages get queued if all the worker threads in this transport thread pool are busy. |
ResponseCodeTable | Number of messages sent against their response codes. |
TimeoutsReceiving | Message receiving timeout. |
TimeoutsSending | Message sending timeout. |
Operations
Operation Name | Description |
---|---|
start() | Start this transport listener/sender. |
stop() | Stop this transport listener/sender. |
resume() | Resume this transport listener/sender which is currently paused. |
resetStatistics() | Clear recorded transport listener/sender statistics and restart recording. |
pause() | Pause this transport listener/sender which has been started. |
maintenenceShutdown(long gracePeriod) | Stop processing new messages, and wait the specified maximum time for in-flight requests to complete before a controlled shutdown for maintenence. |
Broker-specific MBeans
You can also view the following MBeans that are specific to the Brokering profile of WSO2 EI:
org.wso2.andes/ClusterManagementInformation
Attribute Name Description ClusteringEnabled If the clustering mode is enabled in the Brokering profile or not. AllClusterNodeAddresses Retrieve the addresses of the members in a cluster MyNodeID Retrieve the ID that is assigned to the node StoreHealth Retrieve the health status of the message store
org.wso2.andes/MessageStatusInformation
Operation Name Description dumpMessageStatusInfo() Retrieve the lifecycle status of the messages in the store to a specified Excel sheet. org.wso2.andes/QueueManageInformation
Attribute Name Description NamesOfAllDurableQueues Retrieve the names of all durable queues. AllQueueCounts Retrieve the number of messages in all the queues of the message store AllQueueNames Retrieve the names of all the queues in the message store MessageCountOfQueuesAsCompositeData Retrieve the number of messages that are in the queues as Composite data Operation Name Description getMessageCount() Get the number of messages in the store restoreSelectedMessagesFromDeadLetterChannel() Restore the messages you select from the dead letter channel rerouteSelectedMessagesFromDeadLetterChannel() Reroute the messages you select from the dead letter channel deleteMessagesFromDeadLetterQueue() Delete the messages you specify, from the dead letter channel getNumberOfMessagesInDLCForQueue() Retrieve the message count in the dead letter channel of a queue getMessagesInDLCForQueue() Retrieve the messages in the dead letter channel of a queue browseQueue() Retrieve information of a queue by browsing it. getMessageMetadataInDeadLetterChannel() Retrieve metadata of messages in a dead letter channel rerouteAllMessagesInDeadLetterChannelForQueue() Reroute all the messages in a dead letter channel of a queue isQueueExists() Check if a queue exists by a given name deleteAllMessagesInQueue() Delete all the messages in a queue with the specified name getDLCQueueInformation() Retrieve information of the dead letter channel of a specified queue getSubscriptionCount() Retrieve the number of subscriptions of a specified queue org.wso2.andes/Subscription/ManagementInformation
Operation Name Description getMessageCount() Retrieve the number of messages of a specified subscription getSubscriptions() Retrieve all subscriptions getFilteredSubscriptions() Retrieve only a set of specified subscriptions getTotalSubscriptionCountForSearchResult() Retrieve the total number of subscriptions for a specified search getPendingMessageCount() Retrieve the pending number of messages in all subscriptions removeSubscription() Remove a specified subscription