Feeding sub-second metrics into Graphite
Hi,
I know that Whisper is currently not intended for storing metrics on a sub-second resolution, but I was wondering if Graphite can roll up sub-second metrics into one based on some aggregation function.
For example, I have a system.core.0 metric that is being sampled 4 times a second. Is it possible for Graphite to take the 4 samples that come in within a second, and only keep the maximum or maybe average?
Thanks!
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Graphite Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Michael Leinartas
- Solved:
- 2012-05-23
- Last query:
- 2012-05-23
- Last reply:
- 2012-05-22
|
#1 |
You can use the carbon-aggregator daemon to do this but it's honestly not very well suited for it (it's intended more for aggregation multiple metrics into one). A better approach is to do the aggregation before it gets to Graphite either in the collector or using statsd or one of its variants.
Francois Mikus (fmikus) said : | #2 |
Or directly in the code, using classes for creating meaningful metrics. Ex. metrics.
Hope this helps. I do not know if metrics also has equivalents for python, perl, .net etc.
Cheers,
Francois
Mike (mapa3m) said : | #3 |
Thank you for the suggestions! I ended up writing a roll-up method in my Python metrics collector, which seems to be working out pretty well.
Mike (mapa3m) said : | #4 |
Thanks Michael Leinartas, that solved my question.