Skip to content

Mqtt Broker Monitor

DodaTech 1 min read

In this tutorial, you'll learn about EMQX Monitoring Metrics Not Reporting. We cover key concepts, practical examples, and best practices.

The Problem

EMQX monitoring and metrics endpoints return empty or no data.

Quick Fix

Wrong

curl http://localhost:18083/api/v5/metrics  # Empty response
Metrics API returns empty or no data.
# 1. Enable Prometheus metrics
# emqx.conf
# prometheus {
#   push_gateway_url = 'http://localhost:9091'
#   interval = 15s
# }

# 2. Check broker metrics via API
curl -u admin:public http://localhost:18083/api/v5/metrics | jq

# 3. Check client stats
curl -u admin:public http://localhost:18083/api/v5/clients | jq '.count'

# 4. Expose metrics for Prometheus scrape
curl http://localhost:18083/api/v5/prometheus/stats
Metrics show connections count, message rates, dropped messages, and more.

Prevention

EMQX exposes metrics via REST API and optional Prometheus endpoint. Key metrics: connections.count, messages.publish.count, messages.dropped.count, sessions.count. Integrate with Prometheus + Grafana for dashboards. Enable the Dashboard for visual monitoring via /stats page.

DodaTech engineers apply these same patterns across Doda Browser, DodaZIP, and Durga Antivirus Pro for production IoT reliability.

FAQ

### What are the key metrics to monitor?

Connections active, messages in/out per second, dropped messages, license expiry (Enterprise), cluster node status.

Does EMQX support Prometheus?

Yes. Enable prometheus API in emqx.conf. Scrape endpoint: /api/v5/prometheus/stats. Push to gateway supported.

Can I get alerts from metrics?

Yes. Configure alerts in EMQX Dashboard or use Prometheus AlertManager. Alert on: high connection rate, message drop rate, node down.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro