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

Gauge overflow #57

@ghost

Description

Hi
Seems like brubeck got overflow, when handling gauge-value more, than 2^32 (4294967296).

(I did not find in statsd specification max values for gauge:
https://github.com/etsy/statsd/blob/master/docs/metric_types.md,
and in my production envs we often sent values more than 2^32)

How to reproduce:

  1. Send metric to brubeck and watch network packets (I use ngrep):
    echo "complex.delete_me.mem:4294967296|g" | nc -u -q1 127.0.0.1 8126 ... U 127.0.0.1:38487 -> 127.0.0.1:8126 complex.delete_me.mem:4294967296|g.

  2. Watch network traffic from brubeck to storage:
    T 10.0.2.9:53546 -> 10.9.192.2:2003 [AP] complex.delete_me.mem 0 1493135074. # brubeck send 0 instead of 4294967296

My investigation lead me to this function.
https://github.com/github/brubeck/blob/master/src/utils.c#L137

May you provide fix for that case?
Thanks in advance!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions