Hi,
The TRACKMAX feature is really interesting as the max values get "diluted" in the week/month/year views. [...SNIP...] However, there has also been some requests to increase the granularity of the stored data, e.g. to keep 7 days worth of 5-minute averages as opposed to the current 2 days. And likewise for the other RRA's. So if we're going to add MAX/MIN tracking to the RRD-files, we might as well do it at the same time that we change the granularity. The numbers I've been thinking of are to keep
- 30 days of 5-minute averages
- 90 days of 15-minute averages
- 360 days on 1-hour averages
- 1080 days of 3-hour averages [...SNIP...] We also have to keep in mind that TRACKMAX (and TRACKMIN) is a per-statusname option, not a global setting.
I can take some time next week to add these features into hobbit, if we agree on how to do it. I propose a setting in hobbitserver.cfg for RRAS like :
hobbitserver.cfg sample
standard setup -- fits most needs
rra = "RRA:AVERAGE:0.5:1:576"; rra = "$rra RRA:AVERAGE:0.5:6:576"; rra = "$rra RRA:AVERAGE:0.5:24:576"; rra = "$rra RRA:AVERAGE:0.5:288:576"; [...SNIP...] I (or anybody) can provide dump/restore tools along with hobbit, too.
I like this approach where one can set the values that fits for his particular setup. Some of us don't really need to keep 5 minutes average forever, but keeping the absolute maximum is mandatory, so the ability to tweek the value to the needs seems like a definite win.
Of course, adjusting the rra setup for existing rrd, as well as adding min/max value makes the dump/restore tools an absolute necessity.
There's probably some caveats concerning the dump/restore when it happens while hobbitd_rrd tries to update the values of the rrd being recreated, no? If so, maybe the dump/restore tool could be integrated in hobbitd_rdd or do_rrd or in the future "rrd distribution backend"?
Also, I think the setup syntax is a bit confusing, I would prefer either
rra1 = "RRA:AVERAGE:0.5:1:576"; rra2 = "RRA:AVERAGE:0.5:6:576"; rra3 = "RRA:AVERAGE:0.5:24:576"; rra4 = "RRA:AVERAGE:0.5:288:576";
or
rra = "RRA:AVERAGE:0.5:1:576
RRA:AVERAGE:0.5:6:576
RRA:AVERAGE:0.5:24:576
RRA:AVERAGE:0.5:288:576";