Skip to main content

IBM MQ

Plugin: ibm.d.plugin Module: mq

Overview

Monitors IBM MQ queue managers, queues, channels, and topics using the PCF (Programmable Command Format) protocol.

By default the collector tracks the critical system queues SYSTEM.DEAD.LETTER.QUEUE, SYSTEM.ADMIN.COMMAND.QUEUE, and SYSTEM.ADMIN.STATISTICS.QUEUE. All other queues are opt-in via the include_queues list, with exclude_queues removing noisy patterns such as SYSTEM.* or AMQ.*. Include patterns take precedence over excludes so you can safely monitor individual system queues while dropping the broader wildcard.

Per-queue charts are bounded by max_queues (default 50). When more queues are discovered, the collector exports the busiest ones individually, rolls the remainder into an aggregated __other__ dimension, and logs a throttled warning listing the overflowed groups. Parallel queue-group charts summarise depth, traffic, and backlog per naming prefix (first two dot-separated segments, collapsing all SYSTEM.* queues together), so high-level visibility is never lost even when detailed charts are trimmed.

The collector connects to IBM MQ and collects metrics via its monitoring interface.

This collector is supported on all platforms.

This collector supports collecting metrics from multiple instances of this integration, including remote instances.

Default Behavior

Auto-Detection

This integration doesn't support auto-detection.

Limits

The default configuration for this integration does not impose any limits on data collection.

Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

Setup

Prerequisites

Enable monitoring interface

Ensure the IBM MQ monitoring interface is accessible.

Configuration

Options

Configuration options for the mq collector.

Config options
OptionDescriptionDefaultRequired
update_everyData collection frequency.1no
endpointConnection endpoint.dummy://localhostno

via File

The configuration file name for this integration is ibm.d/mq.conf.

You can edit the configuration file using the edit-config script from the Netdata config directory.

cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config ibm.d/mq.conf
Examples
Basic

Basic configuration example.

Config
jobs:
- name: local
endpoint: dummy://localhost

Alerts

There are no alerts configured by default for this integration.

Metrics

Metrics grouped by scope.

The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.

Per channel

These metrics refer to channel instances.

Labels:

LabelDescription
channelChannel identifier
typeType identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.channel.statusChannel Statusinactive, binding, starting, running, stopping, retrying, stopped, requesting, paused, disconnected, initializing, switchingstatus
mq.channel.messagesChannel Message Ratemessagesmessages/s
mq.channel.bytesChannel Data Transfer Ratebytesbytes/s
mq.channel.batchesChannel Batch Ratebatchesbatches/s
mq.channel.batch_sizeChannel Batch Sizebatch_sizemessages
mq.channel.batch_intervalChannel Batch Intervalbatch_intervalmilliseconds
mq.channel.intervalsChannel Intervalsdisc_interval, hb_interval, keep_alive_intervalseconds
mq.channel.short_retry_countChannel Short Retry Countshort_retryretries
mq.channel.long_retry_intervalChannel Long Retry Intervallong_retryseconds
mq.channel.max_msg_lengthChannel Max Message Lengthmax_msg_lengthbytes
mq.channel.sharing_conversationsChannel Sharing Conversationssharing_conversationsconversations
mq.channel.network_priorityChannel Network Prioritynetwork_prioritypriority
mq.channel.buffer_countsChannel Buffer Countssent, receivedbuffers
mq.channel.current_messagesChannel Current Messagescurrentmessages
mq.channel.xmitq_timeChannel Transmission Queue Timexmitq_timemilliseconds
mq.channel.mca_statusChannel MCA Statusmca_statusstatus
mq.channel.indoubt_statusChannel In-Doubt Statusindoubt_statusstatus
mq.channel.ssl_key_resetsChannel SSL Key Resetsssl_key_resetsresets
mq.channel.npm_speedChannel Non-Persistent Message Speednpm_speedspeed
mq.channel.current_sharing_convsChannel Current Sharing Conversationscurrent_sharingconversations

Per channelstatistics

These metrics refer to channelstatistics instances.

Labels:

LabelDescription
channelChannel identifier
typeType identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.channel_stats.messagesChannel Messages (Statistics)messagesmessages/s
mq.channel_stats.bytesChannel Bytes (Statistics)bytesbytes/s
mq.channel_stats.batchesChannel Batches (Statistics)full_batches, incomplete_batchesbatches/s
mq.channel_stats.batch_sizeChannel Average Batch Size (Statistics)avg_batch_sizemessages
mq.channel_stats.put_retriesChannel Put Retries (Statistics)put_retriesretries/s

Per listener

These metrics refer to listener instances.

Labels:

LabelDescription
listenerListener identifier
portPort identifier
ip_addressIp_address identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.listener.statusListener Statusstopped, starting, running, stopping, retryingstatus
mq.listener.backlogListener Connection Backlogbacklogconnections
mq.listener.uptimeListener Uptimeuptimeseconds

Per mqistatistics

These metrics refer to mqistatistics instances.

Labels:

LabelDescription
queue_managerQueue_manager identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.mqi_stats.opensMQOPEN Operations (Statistics)opens_total, opens_failedoperations/s
mq.mqi_stats.closesMQCLOSE Operations (Statistics)closes_total, closes_failedoperations/s
mq.mqi_stats.inqsMQINQ Operations (Statistics)inqs_total, inqs_failedoperations/s
mq.mqi_stats.setsMQSET Operations (Statistics)sets_total, sets_failedoperations/s

Per queue

These metrics refer to queue instances.

Labels:

LabelDescription
queueQueue identifier
typeType identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.queue.depthQueue Depthcurrent, maxmessages
mq.queue.depth_percentageQueue Depth Percentagepercentagepercentage
mq.queue.messagesQueue Messagesenqueued, dequeuedmessages/s
mq.queue.connectionsQueue Connectionsinput, outputconnections
mq.queue.high_depthQueue Peak Depthhigh_depthmessages
mq.queue.uncommitted_msgsQueue Uncommitted Messagesuncommittedmessages
mq.queue.file_sizeQueue File Sizecurrent, maxbytes
mq.queue.last_activityTime Since Last Queue Activitysince_last_get, since_last_putseconds
mq.queue.oldest_msg_ageQueue Oldest Message Ageoldest_msg_ageseconds
mq.queue.time_indicatorsQueue Time Indicatorsshort_period, long_periodmicroseconds
mq.queue.service_intervalQueue Service Intervalservice_intervalmilliseconds
mq.queue.inhibit_statusQueue Inhibit Statusinhibit_get, inhibit_putstatus
mq.queue.priorityQueue Priority Configurationdef_prioritypriority
mq.queue.message_persistenceQueue Default Message Persistencepersistent, non_persistentboolean
mq.queue.retention_intervalQueue Retention Intervalretention_intervalhours
mq.queue.triggersQueue Trigger Configurationtrigger_depth, trigger_typemessages
mq.queue.backout_thresholdQueue Error Handlingbackout_thresholdretries
mq.queue.max_msg_lengthQueue Max Message Lengthmax_msg_lengthbytes
mq.queue.scopeQueue Scopequeue_manager, cellboolean
mq.queue.usageQueue Usage Typenormal, transmissionboolean
mq.queue.msg_delivery_sequenceMessage Delivery Sequencepriority, fifoboolean
mq.queue.harden_get_backoutHarden Get Backoutenabled, disabledboolean

Per queuegroup

These metrics refer to queuegroup instances.

Labels:

LabelDescription
groupGroup identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.queue_group.depthQueue Group Depthcurrent, maxmessages
mq.queue_group.depth_percentageQueue Group Depth Percentagepercentagepercentage
mq.queue_group.messagesQueue Group Messagesenqueued, dequeuedmessages/s
mq.queue_group.connectionsQueue Group Connectionsinput, outputconnections
mq.queue_group.uncommitted_msgsQueue Group Uncommitted Messagesuncommittedmessages
mq.queue_group.file_sizeQueue Group File Sizecurrent, maxbytes
mq.queue_group.oldest_msg_ageQueue Group Oldest Message Ageoldest_msg_ageseconds

Per IBM MQ instance

These metrics refer to the entire monitored instance.

This scope has no labels.

Metrics:

MetricDescriptionDimensionsUnit
mq.qmgr.statusQueue Manager Statusstatusstatus
mq.qmgr.connection_countQueue Manager Connectionsconnectionsconnections
mq.qmgr.uptimeQueue Manager Uptimeuptimeseconds
mq.queues.overviewQueues Monitoring Statusmonitored, excluded, invisible, failedqueues
mq.channels.overviewChannels Monitoring Statusmonitored, excluded, invisible, failedchannels
mq.topics.overviewTopics Monitoring Statusmonitored, excluded, invisible, failedtopics
mq.listeners.overviewListeners Monitoring Statusmonitored, excluded, invisible, failedlisteners

Per IBM MQ instance

These metrics refer to the entire monitored instance.

This scope has no labels.

Metrics:

MetricDescriptionDimensionsUnit
mq.qmgr.cpu_usageQueue Manager CPU Usageuser, systempercentage
mq.qmgr.memory_usageQueue Manager Memory Usagetotalbytes
mq.qmgr.ram_usageQueue Manager RAM Usagetotalbytes
mq.qmgr.log_utilizationQueue Manager Log Utilizationusedpercentage
mq.qmgr.log_file_sizeQueue Manager Log File Sizesizebytes
mq.qmgr.log_write_rateQueue Manager Log Write Rateratebytes/s

Per queuestatistics

These metrics refer to queuestatistics instances.

Labels:

LabelDescription
queueQueue identifier
typeType identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.queue_stats.depth_min_maxQueue Depth Min/Max (Statistics)min_depth, max_depthmessages
mq.queue_stats.avg_queue_timeQueue Average Time (Statistics)non_persistent, persistentmicroseconds
mq.queue_stats.time_indicatorsQueue Time Indicators (Statistics)short_period, long_periodmicroseconds
mq.queue_stats.operationsQueue Operations (Statistics)puts_non_persistent, puts_persistent, gets_non_persistent, gets_persistent, put1s, browsesoperations/s
mq.queue_stats.bytesQueue Bytes (Statistics)put_bytes_non_persistent, put_bytes_persistent, get_bytes_non_persistent, get_bytes_persistent, browse_bytesbytes/s
mq.queue_stats.failuresQueue Operation Failures (Statistics)puts_failed, put1s_failed, gets_failed, browses_failedfailures/s
mq.queue_stats.message_lifecycleQueue Message Lifecycle (Statistics)expired, purged, not_queuedmessages/s

Per subscription

These metrics refer to subscription instances.

Labels:

LabelDescription
subscriptionSubscription identifier
topicTopic identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.subscription.messagesIBM MQ Subscription Messagespendingmessages
mq.subscription.last_message_ageIBM MQ Subscription Last Message Ageageseconds

Per topic

These metrics refer to topic instances.

Labels:

LabelDescription
topicTopic identifier

Metrics:

MetricDescriptionDimensionsUnit
mq.topic.publishersTopic Publisherspublisherspublishers
mq.topic.subscribersTopic Subscriberssubscriberssubscribers
mq.topic.messagesTopic Message Ratemessagesmessages/s
mq.topic.time_since_last_messageTime Since Last Messagetime_since_last_msgseconds

Do you have any feedback for this page? If so, you can open a new issue on our netdata/learn repository.