[rrd-users] How to Force Generation of VRULE Regardless of Scale

Chris Neumann chris at asterdata.com
Fri Jan 26 22:34:44 CET 2007

Hash: SHA1

I was finally able to figure it out (thanks for the responses, which gave me hints as to where to
look).  The documentation describes consolidation in the rrdtool / graph / data section as follows:

> If the resolution of the data is higher than the resolution of the graph, the data will be further
> consolidated. This may result in a graph that spans slightly more time than requested. Ideally
> each point in the graph should correspond with one CDP from an RRA. For instance, if your RRD has
> an RRA with a resolution of 1800 seconds per CDP, you should create an image with width 400 and
> time span 400*1800 seconds (use appropriate start and end times, such as --start end-8days8hours).

> If consolidation needs to be done, the CF of the RRA specified in the DEF itself will be used to
> reduce the data density. This behaviour can be changed using :reduce=<CF>. This optional parameter
> specifies the CF to use during the data reduction phase.

My problem was arising because of the fact that I was creating VRULEs based on a CDEF (rather than a
DEF).  Long story short, I have some CDEFs that determine whether or not to create a VRULE based on
the contents of the DEF.  Anytime consolidation was occurring, the DEF values were averaged too low
to trigger the CDEFs and, thus, the equation for generating a VRULE was not being triggered (RRD was
doing the right thing - the problem was with the averaging of the source data).  Changing the CF to
Max from Average fixed it right away.

Thanks again,

- - Chris

Joe Loiacono wrote:
> Chris Neumann <chris at asterdata.com> wrote on 01/26/2007 11:44:42 AM:
>> Joe,
>> Were all four of your graphs generated from the same RRD, or were 
>> they each from a different RRD
>> with a different scale (i.e. hourly, rolled up to daily, rolled up 
>> to monthly, etc.?)
> Same RRD.
>> In my case, I have data collected and stored in 1 second slots. 
>> Thus, a one-day graph would have
>> 86,400 slots.  When graphing, I might use the entire RRD or just a 
>> subset of the domain (such as the
>> last 10 minutes - 600 slots, by specifying appropriate parameters 
>> for --end and --start).  What I've
>> found is unless I "zoom in" enough (restrict the graph's domain 
>> using --end and --start), the VRULEs
>> aren't drawn.  My suspicion is that if the domain gets too large, 
>> rrdtool graph will not display the
>> VRULEs, as they have a fixed "width" of one slot (e.g. one second, 
>> in my case).  How does this
>> compare to what you've been doing?
> The widest set of points I plot is 365 1-day points.
> A one-day graph in your case would need a width of 86400 pixels, and that 
> sounds pretty big. So maybe rrdgraph 'fudges' when the specified graph 
> width is smaller than the number of plotted points. And then it just skips 
> 'fudging' the VRULE onto the graph. (?)
> Joe

Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org


More information about the rrd-users mailing list