trbs/bucky

Incorrect Behaviour on Slow Updating Statsd Gauges

Closed this issue · 7 comments

Hi,

Using Bucky to recieve statsd data from a slow (i.e. 5 mins update cycle) probe. enqueue_gauges seems to reset metric to 0 during its flush operation. This results in a example data stream "value,0 . . . 0,value, 0 , 0 " being passed to carbon.

Ideally gauge values need to be only pushed to carbon when updated i.e. remove the key post flush. I've worked around by commenting out "self.gauges[k]=0" to maintain the previous value which isn't ideal but gives more accurate data than current default behaviour.

I've noticed the same. In its current implementation, Bucky doesn't work at all to collect slow updating metrics. My daily and monthly metrics go directly to carbon for this reason.

trbs commented

A patch for this was added in 5d90c31

But could we do a new release to pypi ? so we can update our installations :)

b20n commented

Bah, sorry for the delay. 0.2.5 is on pypi.

trbs commented

Thanks ! :)

Regression: In the current Version (2.0) gauges reset again.
Feature-Request: Ideally Bucky should persistate the gauge values on shutdown somewhere and intialize to those values (if found) on startup.

trbs commented

@defransen could you make a separate ticket for the feature request ? It might take some weeks but I will get around to making gauge values persist across restarts.

trbs commented

Wondering where the previous fix got undone...

Please check fc5394f I reapplied the patch for this.