Skip to content
This repository has been archived by the owner on Nov 14, 2019. It is now read-only.

Single metric still stuck #42

Open
deanbittner opened this issue Jul 12, 2016 · 2 comments
Open

Single metric still stuck #42

deanbittner opened this issue Jul 12, 2016 · 2 comments

Comments

@deanbittner
Copy link

deanbittner commented Jul 12, 2016

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.

@ealphonse
Copy link

@deanbittner Thank you so much for the patch! Brubeck is not working without it for us.

Our case is with gauges which are computed and output only once per interval, but I am surprised the bug does not seem more frequent.

@KlavsKlavsen
Copy link

Setting multimsg: 1 - (it was 8) - resolved this issue for me as well.. so this patch should hopefully fix it for me as well.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants