[rrd-users] RRD Graph downward to 0 date prediction

Alexander von Gluck IV kallisti5 at unixzen.com
Mon Jun 29 15:27:53 CEST 2015


On , Steve Shipway wrote:
> options.push("VDEF:#{c}warning=#{c}limit,FIRST")
>           options.push("GPRINT:#{c}warning:    2TB free 
> @%c\\l:strftime")
> 
> In the VDEF, did you really mean FIRST (which just takes the first
> sample in the range) or did you mean MIN?
> 
> If you want the time it reaches 0, then MIN would make more sense -
> and this also has a time component, whereas FIRST does not.
> 
> Steve


Well, ideally I'd want to estimate when only (heh only) 2TB of disk 
space is free.
(thus  the 2000000000000,0 ,   2TB and 0)  I see a lot of examples for 
estimates
using 90,100 (90% and 100%) and then doing FIRST and LAST VDEF's


I tried going with a MIN VDEF on the limit CDEF however it just breaks 
the graph:

Unknown function 'MIN' in VDEF 'storage01warning'
                 options.push("DEF:#{c}=#{rrdfile}:#{c}:MIN")
                 options.push("VDEF:#{c}slope=#{c},LSLSLOPE")
                 options.push("VDEF:#{c}int=#{c},LSLINT")
                 
options.push("CDEF:#{c}avg=#{c},POP,#{c}slope,COUNT,*,#{c}int,+")
                 
options.push("CDEF:#{c}limit=#{c}avg,2000000000000,0,LIMIT")
                 options.push("VDEF:#{c}warning=#{c}limit,MIN")
                 options.push("LINE4:#{c}#{get_color(index)}:#{c}")
                 
options.push("LINE1:#{c}avg#{get_color(index)}cc::dashes=6");
Result >>       options.push("GPRINT:#{c}:LAST:Available\\: %7.2lf 
%s\\l")

I also tried going with a MIN VDEF on the avg CDEF however it also just 
breaks:

Unknown function 'MIN' in VDEF 'storage01warning'

                 options.push("DEF:#{c}=#{rrdfile}:#{c}:MIN")
                 options.push("VDEF:#{c}slope=#{c},LSLSLOPE")
                 options.push("VDEF:#{c}int=#{c},LSLINT")
                 
options.push("CDEF:#{c}avg=#{c},POP,#{c}slope,COUNT,*,#{c}int,+")
                 
options.push("CDEF:#{c}limit=#{c}avg,2000000000000,0,LIMIT")
                 options.push("VDEF:#{c}warning=#{c}avg,MIN")
                 options.push("LINE4:#{c}#{get_color(index)}:#{c}")
                 
options.push("LINE1:#{c}avg#{get_color(index)}cc::dashes=6");
Result >>       options.push("GPRINT:#{c}:LAST:Available\\: %7.2lf 
%s\\l")


At this point getting and estimated date @ 2TB and 0TB would replace a 
lot of manual work :P

A reference I've used so far:
http://hints.jeb.be/2009/12/04/trend-prediction-with-rrdtool/

-- Alex



More information about the rrd-users mailing list