This repository was archived by the owner on Nov 14, 2019. It is now read-only.

Description
In addition to a previous change (#38) ... the following are required to avoid the stuck metric ...
diff --git a/src/samplers/statsd.c b/src/samplers/statsd.c
index 62cb33e..4d6c515 100644
--- a/src/samplers/statsd.c
+++ b/src/samplers/statsd.c
@@ -51,9 +51,9 @@ static void statsd_run_recvmmsg(struct brubeck_statsd *statsd, int sock)
}
/* store stats */
- brubeck_atomic_add(&statsd->sampler.inflow, SIM_PACKETS);
+ brubeck_atomic_add(&statsd->sampler.inflow, res);
- for (i = 0; i < SIM_PACKETS; ++i) {
+ for (i = 0; i < res; ++i) {
char *buf = msgs[i].msg_hdr.msg_iov->iov_base;
char *end = buf + msgs[i].msg_len;
brubeck_statsd_packet_parse(server, buf, end);
These were included in the original patch. Without these additional changes, a single metric in an otherwise idle system is still stuck.