← Back to team overview

graphite-dev team mailing list archive

Re: [Question #148743]: intelligent scaling for derivatives

 

Question #148743 on Graphite changed:
https://answers.launchpad.net/graphite/+question/148743

redbaron posted a new comment:
Question doesnt look answered to me. Indeed, we need some intellegent
scaling function which can detect current data resolution.

Just to make things clearer. Lets say we have 10s resolution for 1 day
and 1minute resolution for 7 days , and have a gauge metric, lets say
"net.eth0.tx.host1", same number as you see in ifconfig output.

Then we want to plot a bytes/second graph. How to do it? FIrst we
calculate "derivative(net.eth0.tx.hos1)", but it gives us
bytes/<resolution in seconds> , which is not we want. To gets bytes/sec
we need to scale derivative by 1/10 (to have 1sec value out of 10 sec),
so we plot "scale(derivative(net.eth0.tx.hos1),0.1)" and it works
perfect but have 2 problems:

- If we decide to change retention params we need to redo all our graphs
- If we try to display this graph for time period longer than "10s" resolution will drop to 60 seconds, derivative will return value "bytes/60seconds" therefore we need to change scale from 0.1 to 1/60 

What is needed is an intelligent scale function to be able to define
graphing options once and get correct values for all resolutions.

-- 
You received this question notification because you are a member of
graphite-dev, which is an answer contact for Graphite.


Follow ups