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.

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:

MetricDimensionsUnit
mq.channel.statusinactive, binding, starting, running, stopping, retrying, stopped, requesting, paused, disconnected, initializing, switchingstatus
mq.channel.messagesmessagesmessages/s
mq.channel.bytesbytesbytes/s
mq.channel.batchesbatchesbatches/s
mq.channel.batch_sizebatch_sizemessages
mq.channel.batch_intervalbatch_intervalmilliseconds
mq.channel.intervalsdisc_interval, hb_interval, keep_alive_intervalseconds
mq.channel.short_retry_countshort_retryretries
mq.channel.long_retry_intervallong_retryseconds
mq.channel.max_msg_lengthmax_msg_lengthbytes
mq.channel.sharing_conversationssharing_conversationsconversations
mq.channel.network_prioritynetwork_prioritypriority
mq.channel.buffer_countssent, receivedbuffers
mq.channel.current_messagescurrentmessages
mq.channel.xmitq_timexmitq_timemilliseconds
mq.channel.mca_statusmca_statusstatus
mq.channel.indoubt_statusindoubt_statusstatus
mq.channel.ssl_key_resetsssl_key_resetsresets
mq.channel.npm_speednpm_speedspeed
mq.channel.current_sharing_convscurrent_sharingconversations

Per channelstatistics

These metrics refer to channelstatistics instances.

Labels:

LabelDescription
channelChannel identifier
typeType identifier

Metrics:

MetricDimensionsUnit
mq.channel_stats.messagesmessagesmessages/s
mq.channel_stats.bytesbytesbytes/s
mq.channel_stats.batchesfull_batches, incomplete_batchesbatches/s
mq.channel_stats.batch_sizeavg_batch_sizemessages
mq.channel_stats.put_retriesput_retriesretries/s

Per listener

These metrics refer to listener instances.

Labels:

LabelDescription
listenerListener identifier
portPort identifier
ip_addressIp_address identifier

Metrics:

MetricDimensionsUnit
mq.listener.statusstopped, starting, running, stopping, retryingstatus
mq.listener.backlogbacklogconnections
mq.listener.uptimeuptimeseconds

Per mqistatistics

These metrics refer to mqistatistics instances.

Labels:

LabelDescription
queue_managerQueue_manager identifier

Metrics:

MetricDimensionsUnit
mq.mqi_stats.opensopens_total, opens_failedoperations/s
mq.mqi_stats.closescloses_total, closes_failedoperations/s
mq.mqi_stats.inqsinqs_total, inqs_failedoperations/s
mq.mqi_stats.setssets_total, sets_failedoperations/s

Per queue

These metrics refer to queue instances.

Labels:

LabelDescription
queueQueue identifier
typeType identifier

Metrics:

MetricDimensionsUnit
mq.queue.depthcurrent, maxmessages
mq.queue.depth_percentagepercentagepercentage
mq.queue.messagesenqueued, dequeuedmessages/s
mq.queue.connectionsinput, outputconnections
mq.queue.high_depthhigh_depthmessages
mq.queue.uncommitted_msgsuncommittedmessages
mq.queue.file_sizecurrent, maxbytes
mq.queue.last_activitysince_last_get, since_last_putseconds
mq.queue.oldest_msg_ageoldest_msg_ageseconds
mq.queue.time_indicatorsshort_period, long_periodmicroseconds
mq.queue.service_intervalservice_intervalmilliseconds
mq.queue.inhibit_statusinhibit_get, inhibit_putstatus
mq.queue.prioritydef_prioritypriority
mq.queue.message_persistencepersistent, non_persistentboolean
mq.queue.retention_intervalretention_intervalhours
mq.queue.triggerstrigger_depth, trigger_typemessages
mq.queue.backout_thresholdbackout_thresholdretries
mq.queue.max_msg_lengthmax_msg_lengthbytes
mq.queue.scopequeue_manager, cellboolean
mq.queue.usagenormal, transmissionboolean
mq.queue.msg_delivery_sequencepriority, fifoboolean
mq.queue.harden_get_backoutenabled, disabledboolean

Per queuegroup

These metrics refer to queuegroup instances.

Labels:

LabelDescription
groupGroup identifier

Metrics:

MetricDimensionsUnit
mq.queue_group.depthcurrent, maxmessages
mq.queue_group.depth_percentagepercentagepercentage
mq.queue_group.messagesenqueued, dequeuedmessages/s
mq.queue_group.connectionsinput, outputconnections
mq.queue_group.uncommitted_msgsuncommittedmessages
mq.queue_group.file_sizecurrent, maxbytes
mq.queue_group.oldest_msg_ageoldest_msg_ageseconds

Per IBM MQ instance

These metrics refer to the entire monitored instance.

This scope has no labels.

Metrics:

MetricDimensionsUnit
mq.qmgr.statusstatusstatus
mq.qmgr.connection_countconnectionsconnections
mq.qmgr.uptimeuptimeseconds
mq.queues.overviewmonitored, excluded, invisible, failedqueues
mq.channels.overviewmonitored, excluded, invisible, failedchannels
mq.topics.overviewmonitored, excluded, invisible, failedtopics
mq.listeners.overviewmonitored, excluded, invisible, failedlisteners

Per IBM MQ instance

These metrics refer to the entire monitored instance.

This scope has no labels.

Metrics:

MetricDimensionsUnit
mq.qmgr.cpu_usageuser, systempercentage
mq.qmgr.memory_usagetotalbytes
mq.qmgr.ram_usagetotalbytes
mq.qmgr.log_utilizationusedpercentage
mq.qmgr.log_file_sizesizebytes
mq.qmgr.log_write_rateratebytes/s

Per queuestatistics

These metrics refer to queuestatistics instances.

Labels:

LabelDescription
queueQueue identifier
typeType identifier

Metrics:

MetricDimensionsUnit
mq.queue_stats.depth_min_maxmin_depth, max_depthmessages
mq.queue_stats.avg_queue_timenon_persistent, persistentmicroseconds
mq.queue_stats.time_indicatorsshort_period, long_periodmicroseconds
mq.queue_stats.operationsputs_non_persistent, puts_persistent, gets_non_persistent, gets_persistent, put1s, browsesoperations/s
mq.queue_stats.bytesput_bytes_non_persistent, put_bytes_persistent, get_bytes_non_persistent, get_bytes_persistent, browse_bytesbytes/s
mq.queue_stats.failuresputs_failed, put1s_failed, gets_failed, browses_failedfailures/s
mq.queue_stats.message_lifecycleexpired, purged, not_queuedmessages/s

Per subscription

These metrics refer to subscription instances.

Labels:

LabelDescription
subscriptionSubscription identifier
topicTopic identifier

Metrics:

MetricDimensionsUnit
mq.subscription.messagespendingmessages
mq.subscription.last_message_ageageseconds

Per topic

These metrics refer to topic instances.

Labels:

LabelDescription
topicTopic identifier

Metrics:

MetricDimensionsUnit
mq.topic.publisherspublisherspublishers
mq.topic.subscriberssubscriberssubscribers
mq.topic.messagesmessagesmessages/s
mq.topic.time_since_last_messagetime_since_last_msgseconds

Alerts

There are no alerts configured by default for this integration.

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


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