Viewing IBM MQ metrics
After you complete the configuration steps in the Configuring section of Monitoring IBM MQ, you can view metrics that are related to IBM MQ in the Instana UI.
To view the metrics, complete the following steps:
- In the sidebar of the Instana UI, select Infrastructure.
- Click a specific monitored host.
- The locally monitored Queue Manager instance is shown as one layer in the separated host or Kubernetes cluster node in the Infrastructure Map page of the Instana UI.
- The remotely monitored Queue Manager instances are shown on the Infrastructure Map page as separate boxes in an availability zone, and these instances are grouped by the
availabilityZone
configuration property or IBM MQ cluster name if present. If a Queue Manager instance is not running in the cluster mode and theavailabilityZone
configuration property is not defined, Queue Manager is shown in theUndefined
zone.
Then, you can see a host dashboard with all the collected metrics and monitored processes.
- IBM MQ Cluster metrics
- IBM MQ Queue Manager metrics
- IBM MQ Queue metrics
- IBM MQ Queues Usage metrics
- IBM MQ Channel metrics
- IBM MQ MQTT channel metrics
- IBM MQ topic metrics
- IBM MQ subscription metrics
- IBM MQ Listener metrics
IBM MQ Cluster metrics
Configuration data
- Name
- Started At
- Alternated At
Performance metrics
- Messages In
- Messages Out
Queue Manager
Metric | Description | Granularity |
---|---|---|
Name | The Queue Manager name. It is collected from the MQCA_Q_MGR_NAME . |
10 minutes |
Version | The version of IBM MQ code. It is collected from MQCA_VERSION . |
10 minutes |
Platform | The platform on which the Queue Manager resides. It is collected from MQIA_PLATFORM . |
10 minutes |
Started At | The data and time when the queue manage starts. It is collected from the MQCACF_Q_MGR_START_DATE and MQCACF_Q_MGR_START_TIME . |
10 minutes |
Alternated At | The alternation date and time. It is collected from the MQCA_ALTERATION_DATE and MQCA_ALTERATION_TIME . |
10 minutes |
Max Handles | The maximum number of handles. It is collected from the MQIA_MAX_HANDLES . |
10 minutes |
Connections | The number of connections. It is collected from MQIACF_CONNECTION_COUNT . |
10 minutes |
HA Type | The high availability type of Queue Manager, which can be RDQM or Multi-instance . |
10 minutes |
HA Role | The role of the running Queue Manager instance of the HA (high availability) Queue Manager. | 10 minutes |
HA Preferred Location | The preferred location to run the Queue Manager instance. | 10 minutes |
HA Floating IP Address | The floating IP address for the HA Queue Manager. | 10 minutes |
Active Node | The node where the Queue Manager instance of HA Queue Manager runs on. | 10 minutes |
Standby Nodes | The nodes where the stopped Queue Manager instance of HA Queue Manager lies on. These standby nodes are ready to take over the active node. | 10 minutes |
Elsewhere Nodes | The nodes where the stopped Queue Manager instance of HA Queue Manager lies on. | 10 minutes |
IBM MQ Queue Manager metrics
The following metrics are collected from the IBM MQ table MQCMD_INQUIRE_CLUSTER_Q_MGR by using programmable command format (PCF) commands:
Configuration data
- Name
- Version
- Status
- Started At
- Alternated At
- Platform
- Location
- Description
- Command Level
- Repo
- Max Handles
- HA Type
- HA Role
- HA Preferred Location
- HA Floating IP Address
- Active Node
- Standby Nodes
- Elsewhere Nodes
If a Queue Manager belongs to a HA (high availability) group of RDQM, HA Type
, Running Node
, and Standby Nodes
values are shown in the Instana UI.
Performance metrics
Metric | Description | Granularity |
---|---|---|
Connections | The number of connections. It is collected from MQIACF_CONNECTION_COUNT . |
60 seconds |
Messages In | The number of messages that are enqueued. It is aggregated from all queues. | 60 seconds |
Messages Out | The number of messages that are dequeued. It is aggregated from all queues. | 60 seconds |
Uncommitted Messages | The number of uncommited messages. It is aggregated from all queues. | 60 seconds |
Channel Initiator Status | The status of channel initiator. | 60 seconds |
Publish/Subscribe Engine Status | The status of publish/subscribe engine. | 60 seconds |
Status Metric | The current execution status of the Queue Manager (statusMetric). It is collected from MQIACF_Q_MGR_STATUS . |
60 seconds |
When you need to create custom events for Queue Manager with built-in metrics, you can use the following enumeration values of Queue Manager Status Metric for custom event creation:
Queue Manager Status Metric | Enumeration Values |
---|---|
STOPPED | 0 |
RUNNING | 2 |
STANDBY | 4 |
When you need to create custom events for Publish/Subscribe Engine with built-in metrics, you can use the following enumeration values of Publish/Subscribe Engine Status Metric for custom event creation:
Publish/Subscribe Engine Status Metric | Enumeration Values |
---|---|
INACTIVE | 0 |
ERROR | 5 |
When you need to create custom events for Channel Initiator with built-in metrics, you can use the following enumeration values of Channel Initiator Status Metric for custom event creation:
Channel Initiator Status Metric | Enumeration Values |
---|---|
STOPPED | 0 |
STARTING | 1 |
RUNNING | 2 |
STOPPING | 3 |
RETRYING | 4 |
Topics
The following topic table shows all the defined topics and in-use topics, including topics with topic name and topics without topic name but with topic string. Topic metrics are collected from the IBM MQ tables MQCMD_INQUIRE_TOPIC
and MQCMD_INQUIRE_TOPIC_STATUS
. The metric data is the same as the result of the IBM MQ command runmqsc "DISPLAY TOPIC(*)" and "DISPLAY TPSTATUS('#') type(TOPIC)". In this way, Instana
provides a complete topic list for overall view.
Metric | Description | Granularity |
---|---|---|
Name | The topic name. This metric is collected from MQCA_TOPIC_NAME . |
10 minutes |
Queue Manager | The name of the Queue Manager to which a topic belongs to. | 10 minutes |
Cluster | The name of the cluster to which a topic belongs to. | 10 minutes |
Type | The type of topic object: local topic or cluster topic. This metric is collected from MQIA_TOPIC_TYPE . |
10 minutes |
Alternated At | The alternation date and time of the topic. This metric is collected from MQCA_ALTERATION_DATE and MQCA_ALTERATION_TIME . |
10 minutes |
Current Publish Count | The total number of publishes made by all publications that are currently being published to this topic. This metric is collected from MQIACF_PUBLISH_COUNT . |
60 seconds |
Current Publications | The number of applications that are currently published to the topic. This metric is collected from MQIA_PUB_COUNT . |
60 seconds |
Subscriptions | The number of subscriptions (subscribers) for this topic. This metric is collected from MQIA_SUB_COUNT . |
60 seconds |
Subscriptions
Metric | Description | Granularity |
---|---|---|
Name | The subscription name. It is collected from MQCACF_SUB_NAME . |
10 minutes |
Subscription Type | The subscription type. It is collected from MQIACF_SUB_TYPE . |
10 minutes |
Topic String | The topic string that this subscription subscribes. It is collected from MQCA_TOPIC_STRING . |
10 minutes |
Durable | Whether this subscription is durable for not. It is collected from MQIACF_DURABLE_SUBSCRIPTION . |
10 minutes |
Number of Messages | The number of messages that are put to the destination specified by this subscription. It is collected from MQIACF_MESSAGE_COUNT . |
60 seconds |
Subscription Alternated At | The alternation date and time. It is collected from MQCA_ALTERATION_DATE and MQCA_ALTERATION_TIME . |
10 minutes |
Listeners
Metric | Description | Granularity |
---|---|---|
Name | The name of the listener. It is collected from MQCACH_LISTENER_NAME . |
10 minutes |
Status | The listener status. It is collected from MQIACH_LISTENER_STATUS . |
10 minutes |
Port | The port number. It is collected from MQIACH_PORT . |
10 minutes |
IP Address | The IP address of the listener. It is collected from MQCACH_IP_ADDRESS . |
10 minutes |
Started At | The date and time when listener starts. It is collected from MQCACH_LISTENER_START_DATE and MQCACH_LISTENER_START_TIME . |
10 minutes |
QM Name | The name of Queue Manager that contains this listener. | 10 minutes |
Queues usage by application
Metric | Description | Granularity |
---|---|---|
Name | The queue name. It is collected from MQCA_Q_NAME . |
10 minutes |
Application | The open application type. It is collected from MQCACF_APPL_TAG . |
10 minutes |
Channel | The channel name. It is collected from MQCACH_CHANNEL_NAME . |
10 minutes |
Connection | The connection name. It is collected from MQCACH_CONNECTION_NAME . |
10 minutes |
Handle State | The state of the handle. It is collected from MQIACF_HANDLE_STATE . |
10 minutes |
User | The open application user name. It is collected from MQCACF_USER_IDENTIFIER . |
10 minutes |
Queues
Metric | Description | Granularity |
---|---|---|
Name | The queue name. It is collected from MQCA_Q_NAME . |
10 minutes |
Depth Percentage | The percentage that the queue current depth has reached its maximum depth. | 60 seconds |
Current Queue Depth | The current queue depth. It is collected from MQIA_CURRENT_Q_DEPTH . |
60 seconds |
Max Queue Depth | The maximum queue depth. It is collected from MQIA_MAX_Q_DEPTH . |
60 seconds |
Open Input Count | The open input count. It is collected from MQIA_OPEN_INPUT_COUNT . |
60 seconds |
Open Output Count | The open output count. It is collected from MQIA_OPEN_OUTPUT_COUNT . |
60 seconds |
Last Put Time | The put date and time of last message. It is collected from MQCACF_LAST_PUT_DATE and MQCACF_LAST_PUT_TIME . |
60 seconds |
Last Get Time | The get date and time of last message. It is collected from MQCACF_LAST_GET_DATE and MQCACF_LAST_GET_TIME . |
60 seconds |
Channels
Metric | Description | Granularity |
---|---|---|
Name | The channel name. It is collected from MQCACH_CHANNEL_NAME . |
10 minutes |
Status | The channel status. It is collected from MQIACH_CHANNEL_STATUS . |
10 minutes |
Type | The channel type. It is collected from MQIACH_CHANNEL_TYPE . |
10 minutes |
In Doubt | Whether the channel is currently in doubt. It is collected from MQIACH_INDOUBT_STATUS . |
10 minutes |
Substate | The action that is being performed by the channel. It is collected from MQIACH_CHANNEL_SUBSTATE . |
10 minutes |
Connection Name | The connection name. It is collected from MQCACH_CONNECTION_NAME . |
10 minutes |
Active Conversations | The number for the active conversations of the server connection channel. It is collected from MQIACH_CURRENT_SHARING_CONVS . |
10 minutes |
Remote Queue Manager | The name of the remote Queue Manager or queue sharing group. It is collected from MQCA_REMOTE_Q_MGR_NAME . |
10 minutes |
Start Date/Time | The date and time when the channel starts. It is collected from MQCACH_CHANNEL_START_DATE and MQCACH_CHANNEL_START_TIME . |
10 minutes |
MQTT channels
Metric | Description | Granularity |
---|---|---|
Name | The channel name. It is collected from MQCACH_CHANNEL_NAME . |
10 minutes |
Status | The channel status. It is collected from MQIACH_CHANNEL_STATUS . |
10 minutes |
Type | The channel type. It is collected from MQIACH_CHANNEL_TYPE . |
10 minutes |
Client ID | The Client Identifier for each client connection. It is collected from MMQCACH_CLIENT_ID . |
10 minutes |
Connection Name | The connection name. It is collected from MQCACH_CONNECTION_NAME . |
10 minutes |
Connections | The number for the active conversations of the server connection channel. It is collected from MQIACF_CONNECTION_COUNT . |
10 minutes |
Start Date/Time | The date and time when the MQTT channel starts. It is collected from MQCACH_CHANNEL_START_DATE and MQCACH_CHANNEL_START_TIME . |
10 minutes |
IBM MQ Queue metrics
The following metrics are collected from the IBM MQ tables MQCMD_INQUIRE_Q, MQCMD_INQUIRE_Q_STATUS, and MQCMD_RESET_Q_STATS by using PCF commands:
Configuration data
- Name
- Type
- Created At
- Alternated At
- Inhibit Put
- Inhibit Get
- Delivery Sequence
- Default Binding
- Usage
- Monitoring
- Queue Depth High Limit
- Queue Depth Low Limit
- Queue Service Interval
- Queue Description
Performance metrics
For the metrics Messages In and Messages Out in KPI value frame, they are summarized data during the selected time range.
Depth
Metric | Description | Granularity |
---|---|---|
Queue Depth | The current queue depth. It is collected from MQIA_CURRENT_Q_DEPTH . |
60 seconds |
Max Queue Depth | The maximum queue depth. It is collected from MQIA_MAX_Q_DEPTH . |
60 seconds |
Queue Full Percentage | The percentage that the queue reaches its maximum depth. | 60 seconds |
Messages
Metric | Description | Granularity |
---|---|---|
Messages In | The number of messages that are enqueued. It is collected from MQIA_MSG_ENQ_COUNT . |
60 seconds |
Messages Out | The number of messages that are dequeued. It is collected from MQIA_MSG_DEQ_COUNT . |
60 seconds |
Uncommitted Messages | The number of uncommitted changes that are pending for the queue. It is collected from MQIACF_UNCOMMITTED_MSGS . |
60 seconds |
Message Time
Metric | Description | Granularity |
---|---|---|
Oldest Message | The age of the oldest message. It is collected from MQIACF_OLDEST_MSG_AGE . |
60 seconds |
On Queue | The indicator of the time that messages remain on the queue. It is collected from MQIACF_Q_TIME_INDICATOR . |
60 seconds |
Calls
Metric | Description | Granularity |
---|---|---|
Open Input Count | The open input count. It is collected from MQIA_OPEN_INPUT_COUNT . |
60 seconds |
Open Output Count | The open output count. It is collected from MQIA_OPEN_OUTPUT_COUNT . |
60 seconds |
When the Messages In and Message Out data is retrieved, the QSTATS will be reset.
Statistics
The following queue statistics metrics are collected from IBM MQ SYSTEM.ADMIN.STATISTICS.QUEUE
:
Metric | Description | Granularity |
---|---|---|
Interval Start Time | The date and time when the statistics monitoring starts. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Interval End Time | The date and time when the statistics monitoring ends. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The MQ Queue Statistics monitoring interval that is specified by Interval Start/End Time |
Persistent Put Bytes | The number of bytes for persistent messages that are written in using the put requests. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The IBM MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Nonpersistent Put Bytes | The number of bytes for nonpersistent messages that are written in using the put requests. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The IBM MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Persistent Get Bytes | The number of read bytes in destructive get requests for persistent messages. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Nonpersistent Get Bytes | The number of read bytes in destructive get requests for nonpersistent messages. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Expired Msg Count | The number of persistent and nonpersistent messages that are discarded (because they are expired) before they are retrieved. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The IBM MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Put Fail Count | The number of unsuccessful put message attempts. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Put1 Fail Count | The number of unsuccessful attempts to put a persistent and nonpersistent message to a queue that uses MQPUT1 requests. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Get Fail Count | The number of unsuccessful destructive get requests. It is collected from SYSTEM.ADMIN.STATISTICS.QUEUE . |
The IBM MQ Queue Statistics monitoring interval that is specified by the metrics Interval Start and Interval End Time. |
Notes:
- To get the MQ queue statistics data, MQ queue statistics configurations need to be set. For more information, see Extra IBM MQ configurations.
- All the statistics data in this table is the total number within MQ Queue Statistics monitoring interval (from Interval Start Time to Interval End Time).
- For historical statistics data, you need to select the time span to the time frame that you want to check.
- When you define custom event with these built-in statistics metrics, select
any
for theMatching Operator
field to filter all the statistics records. Note thatsum
byTime Window
is not supported, andavg
,min
andmax
are supported, because all the statistics metrics are already aggregated by MQ in MQ-defined statistics interval (STATINT).
IBM MQ Queues Usage metrics
The following metrics are collected from the IBM MQ table MQCMD_INQUIRE_Q_STATUS by using PCF commands:
Configuration data
- Name
- Application
- Channel
- Connection
- Input Type
- Output
- Inquire
- Set
- Browse
- Last Message At
- Handle State
- User
Performance metrics
Metric | Description | Granularity |
---|---|---|
Open Inputs | The open input count. | 60 seconds |
Open Outputs | The open output count. | 60 seconds |
IBM MQ Channel metrics
The following metrics are collected from the IBM MQ table MQCMD_INQUIRE_CHANNEL_STATUS and MQCMD_INQUIRE_CHANNEL by using PCF commands:
Configuration data
- Name
- Type
- Status
- In Doubt
- Substate
- Connection Name
- Active Conversations
- Remote Queue Manager
- Start Date/Time
Performance metrics
For Messages Sent
, Messages Available
, Buffers Sent
, Buffers Received
, Bytes Sent
, BytesReceived
in KPI value frame, they are summarized data by time selection.
Messages
Metric | Description | Granularity |
---|---|---|
Sent/Received | The number of messages that are sent or received, or the number of MQI calls that are handled. It is collected from MQIACH_MSGS . |
60 seconds |
Available | The number of messages available. It is collected from MQIACH_XMITQ_MSGS_AVAILABLE . |
60 seconds |
Sequence Number
Metric | Description | Granularity |
---|---|---|
Current | The sequence number of the last message in the in-doubt batch. It is collected from MQIACH_CURRENT_SEQ_NUMBER . |
60 seconds |
Last | The sequence number of the last message in the last committed batch. It is collected from MQIACH_LAST_SEQ_NUMBER . |
60 seconds |
For Client Connection and Server Connection types of Channels, Messages Available and Sequence Number metrics are not available.
Buffers
Metric | Description | Granularity |
---|---|---|
Sent | The number of buffers that are sent. It is collected from MQIACH_BUFFERS_SENT . |
60 seconds |
Received | The number of buffers that are received. It is collected from MQIACH_BUFFERS_RECEIVED . |
60 seconds |
Bytes
Metric | Description | Granularity |
---|---|---|
Sent | The bytes that are sent. It is collected from MMQIACH_BYTES_SENT . |
60 seconds |
Received | The bytes that are received. It is collected from MMQIACH_BYTES_RCVD . |
60 seconds |
Status
Metric | Description | Granularity |
---|---|---|
Channel Status Metric | The channel status (channelStatusMetric ). It is collected from MQIACH_CHANNEL_STATUS . |
60 seconds |
The channel of Advanced Message Queuing Protocol (AMQP) type is not supported for Channel Status Metric, because this type of channel is not collected from the common channel status table MQIACH_CHANNEL_STATUS
of IBM MQ.
When you need to create custom events for channels status with built-in metrics, you can use the following enumeration values of Channel Status Metric for custom event creation:
Channel Status Metric | Enumeration Values |
---|---|
INACTIVE | 0 |
BINDING | 1 |
STARTING | 2 |
RUNNING | 3 |
STOPPING | 4 |
RETRYING | 5 |
STOPPED | 6 |
REQUESTING | 7 |
PAUSED | 8 |
DISCONNECTED | 9 |
INITIALIZING | 13 |
SWITCHING | 14 |
IBM MQ MQTT channel metrics
The following metrics are collected from the IBM MQ table MQCMD_INQUIRE_CHANNEL_STATUS by using PCF commands:
Configuration data
- Name
- Type
- Status
- Client ID
- Connection Name
- Connections
- Client User
- MCA User
- Protocol
- Keep Alive Interval
- Last Message Date/Time
- Start Date/Time
Performance metrics
Messages
Metric | Description | Granularity |
---|---|---|
MQTT Messages Sent | The number of messages that are sent by the client since it last connected. It is collected from MQIACH_MSGS_SENT . |
60 seconds |
MQTT Messages Received | The number of messages that are received by the client since the last connection with the MQTT channel. The number of messages that are received is collected from the MQIACH_MSGS_RECEIVED or MQIACH_MSGS_RCVD . |
60 seconds |
In Doubt Input | The number of inbound messages to the client that are in doubt. It is collected from MQIACH_IN_DOUBT_IN . |
60 seconds |
In Doubt Output | The number of outbound messages from the client that are in doubt. It is collected from MQIACH_IN_DOUBT_OUT . |
60 seconds |
Pending Outbound | The number of outbound messages that is pending in the MQTT channel. It is collected from the MQIACH_PENDING_OUT . |
60 seconds |
Connections
Metric | Description | Granularity |
---|---|---|
Connections | The number of MQTT connections that are connected to MQTT channel. The number of MQTT connections is collected from the MQIACF_CONNECTION_COUNT . |
60 seconds |
Status
Metric | Description | Granularity |
---|---|---|
Channel Status Metric | The MQTT channel status (channelStatusMetric ). It is collected from MQIACH_CHANNEL_STATUS . |
60 seconds |
The enumeration values of MQTT Channel Status Metric are the same with channel status metric.
IBM MQ topic metrics
The following metrics are collected from IBM MQ tables MQCMD_INQUIRE_TOPIC and MQCMD_INQUIRE_TOPIC_STATUS by using PCF commands:
Configuration data
- Name
- Queue Manager
- Cluster Name
- Topic Type
- Topic Alternated At
Performance metrics
Message
Metric | Description | Granularity |
---|---|---|
Current Publish Count | The total number of published messages made by all publications (publishers) that are currently being published to this topic. This metric is collected from MQIACF_PUBLISH_COUNT . |
60 seconds |
Publications
Metric | Description | Granularity |
---|---|---|
Current Publications | The number of publications (publishers) that are currently published to the topic. This metric is collected from MQIA_PUB_COUNT . |
60 seconds |
Subscriptions
Metric | Description | Granularity |
---|---|---|
Subscriptions | The number of subscriptions (subscribers) for this topic string, including durable subscribers who are not currently connected. This metric is collected from MQIA_SUB_COUNT . |
60 seconds |
IBM MQ subscription metrics
The following metrics are collected from the IBM MQ tables MQCMD_INQUIRE_SUBSCRIPTION and MQCMD_INQUIRE_SUB_STATUS by using PCF commands:
Configuration data
- Name
- Subscription Type
- Topic String
- Durable
- Subscription Alternated At
Performance metrics
Message
Metric | Description | Granularity |
---|---|---|
Count | The number of messages that are put to the destination that is specified by this subscription. It is collected from MQIACF_MESSAGE_COUNT . |
60 seconds |
IBM MQ Listener metrics
The following metrics are collected from the IBM MQ tables MQCMD_INQUIRE_LISTENER and MQCMD_INQUIRE_LISTENER_STATUS by using PCF commands:
Configuration data
- Name
- Status
- Port
- Started At
- Listener IP Address
Status
Metric | Description | Granularity |
---|---|---|
Listener Status Metric | The listener status (listenerStatusMetric ). It is collected from MQIACH_LISTENER_STATUS . |
60 seconds |
When you need to create custom events for listener status with built-in metrics, you can use the following enumeration values of Listener Status Metric for custom event creation:
Listener Status Metric | Enumeration Values |
---|---|
STOPPED | 0 |
QUIESCING | 1 |
RUNNING | 2 |
STOPPING | 3 |
RETRYING | 4 |
When you need to create custom events with built-in metrics, refer to Built-in events reference.