Rrd tricks: Difference between revisions

From Federal Burro of Information
Jump to navigationJump to search
(Created page with "On Mon, Mar 10, 2008 at 04:03:57PM +0100, Felix Castillo Sanchez wrote: > > I'm trying to reconstruct the nice graph showed in the "Gallery" showing > filesystem utilization and...")
 
No edit summary
Line 1: Line 1:
https://lists.oetiker.ch/pipermail/rrd-users/2008-March/013819.html
<pre>
On Mon, Mar 10, 2008 at 04:03:57PM +0100, Felix Castillo Sanchez wrote:
On Mon, Mar 10, 2008 at 04:03:57PM +0100, Felix Castillo Sanchez wrote:
>  
>  
Line 5: Line 8:
>  
>  
> Can somebody tell me how to draw the lines for the future?
> Can somebody tell me how to draw the lines for the future?
</pre>


You may find it easier to do much of the work outside of rrd.  But I'm
You may find it easier to do much of the work outside of rrd.  But I'm

Revision as of 16:49, 15 February 2011

https://lists.oetiker.ch/pipermail/rrd-users/2008-March/013819.html

On Mon, Mar 10, 2008 at 04:03:57PM +0100, Felix Castillo Sanchez wrote:
> 
> I'm trying to reconstruct the nice graph showed in the "Gallery" showing
> filesystem utilization and predicted trends.
> 
> Can somebody tell me how to draw the lines for the future?

You may find it easier to do much of the work outside of rrd. But I'm drawing some similar lines. I haven't done all the work to make the dates come out nice, though.

Something like:

[...]
             "DEF:scratch=$rrd_file:scratch:AVERAGE",
# Calculate slope
             "VDEF:slope=scratch,LSLSLOPE",
             "VDEF:int=scratch,LSLINT",
# Graph trend line
             "CDEF:trend=scratch,POP,slope,COUNT,*,int,+",
             "LINE:trend#00FF00",
# Find regions where trend is less than 0
             "CDEF:sub=trend,NEGINF,1,LIMIT",
             "VDEF:first_sub=sub,FIRST",
             "GPRINT:first_sub:Predicted empty %F:strftime",
# Vertical line at that point
             "VRULE:first_sub#FF0000:exhaustion point",
[...]

Note that in my case I'm looking for when the graph hits zero, not when it hits 100.

You'll probably want to lock down the vertical graph limits to keep the line from extending them too far.