Icon for RabbitMQIcon for InfluxDB

RabbitMQ with InfluxDB

Integrates withCurated

Overview

RabbitMQ and InfluxDB form a powerful combination for IoT and industrial data pipelines: RabbitMQ handles message ingestion and routing, InfluxDB stores time-series data for analysis.

Integration Architecture

Devices → RabbitMQ → Consumer App → InfluxDB
                ↓
         Telegraf (optional bridge)

Integration Methods

1. Custom Consumer Application

Write a consumer in Python, Go, or Node.js that:

  • Consumes messages from RabbitMQ
  • Parses payload (JSON, Protobuf, etc.)
  • Writes to InfluxDB via client library

2. Telegraf AMQP Consumer

Telegraf has an AMQP consumer plugin:

[[inputs.amqp_consumer]]
  brokers = ["amqp://rabbitmq:5672"]
  queue = "sensor-data"
  data_format = "json"

3. MQTT Bridge

If using RabbitMQ's MQTT plugin:

  • Telegraf MQTT consumer connects directly
  • No custom code required

Use Cases

  • Sensor Data Ingestion: IoT devices publish to RabbitMQ, Telegraf consumes and writes to InfluxDB
  • Batch Processing: Accumulate messages in RabbitMQ, process batches into InfluxDB
  • Backpressure Handling: RabbitMQ buffers when InfluxDB is under load

Best Practices

  • Use message acknowledgments for reliability
  • Consider batching writes to InfluxDB
  • Monitor queue depth as health indicator