The message router is at the core of Sensate IoT and responsible for routing messages between various systems. The router uses the MQTT protocol to route messages to:
- Trigger services;
- Storage services;
- Live data services;
- Public MQTT broker.
The router routes both SO (Sensor Originating, or measurements) and ST (Sensor Terminating, or actuator) messages.
The message router needs various settings in order to function correctly:
-
Database settings:
- MongoDB
- PostgreSQL
-
Routing config:
- Trigger topic
- Storage topic
- Network event topic
- Actuator topic
- Live data topic
- Publish interval
- Routing batch size
-
MQTT configuration
- Internal MQTT broker
- Public MQTT broker
-
Metrics server
-
Serilog configuration
The following metrics are collected from the routing service:
- Message routed counts:
- Ingress count;
- Egress count;
- Request duration;
- Routing duration (per message).