- https://www.rabbitmq.com/documentation.html
- https://www.rabbitmq.com/tutorials/amqp-concepts.html
- https://www.rabbitmq.com/getstarted.html
- Publishing processed events to enterprise messaging systems.
- Integrating Condense with RabbitMQ-based microservices.
- Triggering asynchronous workflows.
- Delivering events to applications that consume RabbitMQ queues.
- Publishes messages from Condense topics to RabbitMQ exchanges.
- Supports direct, topic, fanout, and headers exchange types.
- Uses username/password authentication.
- Supports RabbitMQ Virtual Hosts.
- Routes messages using configurable routing keys.
- The connector consumes messages from the configured Condense topic.
- It establishes an authenticated connection to the RabbitMQ broker.
- Each message is published to the configured exchange.
- RabbitMQ routes the message to matching queues based on the routing key.
- Downstream consumers receive the messages from their subscribed queues.
Field-by-Field Explanation
1. Title
- Description: User-defined name for the connector.
- Example:
order-events-to-rabbit
2. Host
- Description: Hostname or IP address of the RabbitMQ broker.
- Example:
rabbitmq.internal.company.com
3. Port
- Description: RabbitMQ listener port.
- Default:
5672 - TLS Default:
5671 - Example:
5672
4. Username
- Description: RabbitMQ username used for authentication.
- Example:
streamer
5. Password
- Description: Password associated with the configured username.
- Example:
********
6. Exchange Name
- Description: RabbitMQ exchange that receives published messages.
- Example:
sensor_events_exchange
7. Virtual Host
- Description: RabbitMQ virtual host containing the exchange and queues.
- Default:
/ - Example:
iot_streams
8. Queue
- Description: Destination queue that is bound to the configured exchange.
- Example:
sensor_ingest_queue
9. Routing Key
- Description: Routing key used by RabbitMQ to route messages.
- Example:
region.north.sensor
10. Topic (Input)
- Description: Condense Kafka topic whose messages are published to RabbitMQ.
- Example:
device_stream_north
- Verify the configured username and password.
- Ensure the user has access to the configured Virtual Host.
- Verify the exchange exists.
- Confirm the routing key matches the queue binding.
- RabbitMQ does not create queues automatically during publishing.
- Ensure the destination queue already exists.
- Verify hostname, port, firewall rules, and network connectivity.
- Check exchange bindings and queue configuration.
- Verify RabbitMQ broker logs for delivery issues.
- Direct exchanges use exact routing-key matching.
- Topic exchanges support wildcard routing.
- Fanout exchanges broadcast to all bound queues.
- Headers exchanges route using message headers.
- RabbitMQ publisher confirmations can be used to verify successful message delivery where supported.
- Multiple queues can be bound to the same exchange for fan-out processing.
- Use TLS-enabled connections where possible.
- Use dedicated Virtual Hosts for environment isolation.
- Apply least-privilege permissions to RabbitMQ users.
- Create exchanges and queues before deploying the connector.
- Use descriptive routing keys and topic names.
- Secure RabbitMQ credentials and rotate them regularly.
- Monitor RabbitMQ broker health and connector logs.
- Use durable exchanges and queues for production workloads.