m7kniMQ exporters
Source Download

Prometheus

IBM's mq_prometheus exposes MQ metrics on an HTTP endpoint for Prometheus or Grafana Alloy to scrape.

Download the mq-exporter-dist archive for your platform from GitHub Releases. The package contains no OpenTelemetry exporter or MQ runtime.

Install

Follow the Linux guide or Windows guide. Both guides use Prometheus as their default exporter and configure a listener on 127.0.0.1:9157. Give each queue manager a separate instance and port.

Verify the connection

On Linux:

/opt/mq-exporter/qm1/mq-dist health --qmgr QM1 --url http://127.0.0.1:9157/metrics

On Windows:

& 'C:\Program Files\mq-exporter\qm1\mq-dist.exe' health --qmgr QM1 --url http://127.0.0.1:9157/metrics

Expect connected:true and status:2. The helper checks the exact ibmmq_qmgr_status metric and the exact qmgr="QM1" label. It rejects failed HTTP requests, partial responses, malformed samples and duplicate status samples.

A running process or HTTP 200 does not prove that MQ monitoring works. Check queue metrics separately: compare the queue names received by your monitoring system with the queues you intended to monitor.

Connect your monitoring system

Neither package bundles Alloy or Prometheus configuration. Install and configure your monitoring agent separately; the exporter installers never edit it.

Keep integrations/ibm-mq as the scrape job name if you use the Grafana IBM MQ integration dashboards. Their queries select that job name.

scrape_configs:
  - job_name: integrations/ibm-mq
    static_configs:
      - targets: ['127.0.0.1:9157']

This address works when the scraper runs on the same host. For a remote scraper, configure the listener, network access and TLS deliberately. The installer does not open firewall ports or configure TLS. An Alloy example is also available.

For Alloy on the same host, add this to its existing configuration and connect it to your existing authenticated prometheus.remote_write component named metrics:

prometheus.scrape "ibm_mq_qm1" {
  targets = [{ __address__ = "127.0.0.1:9157", instance = "QM1" }]
  job_name = "integrations/ibm-mq"
  scrape_interval = "60s"
  forward_to = [prometheus.remote_write.metrics.receiver]
}

Validate and reload Alloy using your normal deployment process. Check both its scrape result and the received MQ metrics. The snippet does not configure a destination or credentials, and does not replace the rest of your Alloy config.

Connection failures

If the first MQ connection fails, the exporter exits 10 before opening its HTTP listener. The service retries after 15 seconds. After a successful connection, keepRunning keeps the listener available during a disconnection; status can then be 0. Check troubleshooting if status does not return to 2.

Community-contributed. Not affiliated with IBM or Grafana Labs. Provided without warranty.
Collector source: IBM MQ metric samples.