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.

Expiry alternative #51

@deanbittner

Description

@deanbittner

Expiry causes, potentially, a metric that has not reported in an interval to push a zero value to graphite when the total time to expiry/ DISABLED > the sampling interval. In this circumstance, the metric has not reported and consequently has no value, and yet a zero value is pushed to graphite.

For counters and meters, it implies that a metric has reported a zero value when it has not reported, or that the aggregated total of an incrementer/ decrementer is zero, for instance, when it has not reported. I haven't looked whether histograms/ timers report zero values, but I'm guess they might.

There is also the overhead of walking the list of metrics to expire them.

Would it not be more accurate, and more efficient, to mark a metric as ACTIVE when recorded and DISABLED when sampled? This way only metrics that have reported during the sample period will push a value to graphite -- and the zeros that represent non-reports/ non-expired will not get pushed?

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