Commit Graph

3 Commits (master)

Author SHA1 Message Date
Dustin 2265470710 Buffer message batches to send to HTTP server
Instead of "relaying" messages from the MQTT subscriber to the HTTP
request via a second channel, we now collect each batch of messages and
serialize them into a buffer.  This makes it possible to retry the HTTP
request if it fails, without losing any data.  Using the `Bytes` data
structure is the most effecient way to do this, as it implements `Clone`
without copying, so each iteration of the retry loop uses the same data
in memory.

Being able to retry failed HTTP requests eliminates the need for the
"preflight" request entirely.
2025-05-01 21:11:50 -05:00
Dustin ec364b8fd3 Implement Prometheus metrics
The `metrics` crate, along with `metrics-exporter-prometheus`, makes it
extremely easy to instrument code with metrics and export them to
Prometheus.  Here, we're adding a few metrics to track how many messages
are being processed and monitor the queue depth.
2025-04-30 21:20:04 -05:00
Dustin 753a0be931 Initial commit 2025-04-29 22:11:10 -05:00