Discussion:
[rrd-users] highest 95 percentile
(too old to reply)
Morten Guldager
2014-07-28 10:18:42 UTC
Permalink
I have two network interfaces graphed, they should be 95 pct billed as one.

Algorithm should be:
- sum all inputs as one and all outputs as another "graph"
- calc the 95pct for each "graph"
- finally take the highest of those two.

I need to make a HRULE showing the highest 95 percentile, input or output.

I have tried: (a bit silly names around, they are machine generated)

DEF:D_1=interface-12.rrd:InOctets:AVERAGE
DEF:D_2=interface-11.rrd:InOctets:AVERAGE
CDEF:C_Input=0,D_1,+,D_2,+,8,*
VDEF:V_Input_AVERAGE=C_Input,AVERAGE
VDEF:V_Input_MAXIMUM=C_Input,MAXIMUM
LINE2:C_Input#00FF00:Input
GPRINT:V_Input_AVERAGE:AVERAGE %6.2lf%s
GPRINT:V_Input_MAXIMUM:MAXIMUM %6.2lf%s\\l

DEF:D_3=interface-12.rrd:OutOctets:AVERAGE
DEF:D_4=interface-11.rrd:OutOctets:AVERAGE
CDEF:C_Output=0,D_3,+,D_4,+,8,*
VDEF:V_Output_AVERAGE=C_Output,AVERAGE
VDEF:V_Output_MAXIMUM=C_Output,MAXIMUM
LINE2:C_Output#0000FF:Output
GPRINT:V_Output_AVERAGE:AVERAGE %6.2lf%s
GPRINT:V_Output_MAXIMUM:MAXIMUM %6.2lf%s\\l

VDEF:V_Input95=C_Input,95,PERCENT
VDEF:V_Output95=C_Output,95,PERCENT
VDEF:V_total95=V_Input95,V_Output95,MAX # <-- this one fails!
HRULE:V_Input95#009900:Input 95PCT
HRULE:V_Output95#000099:Output 95PCT
HRULE:V_total95#FF0000:total 95PCT

It fails with: variable 'V_Input95' not DEF nor CDEF in VDEF 'V_total95'

I cannot use a VDEF on VDEF's it seems... Suggestions?
--
/Morten %-)
Morten Guldager
2014-07-28 13:33:43 UTC
Permalink
I just received an anonymous mail response to the above which boils down to
the following two lines:

CDEF:C_95pct_MAX=D_1,POP,V_Input_95,V_Output_95,MAX
VDEF:V_95pct_MAX=C_95pct_MAX,MAXIMUM

which when merged into my previous code seems to do the trick.

Thanks!
--
/Morten %-)
Post by Morten Guldager
I have two network interfaces graphed, they should be 95 pct billed as
one.
- sum all inputs as one and all outputs as another "graph"
- calc the 95pct for each "graph"
- finally take the highest of those two.
I need to make a HRULE showing the highest 95 percentile, input or output.
I have tried: (a bit silly names around, they are machine generated)
DEF:D_1=interface-12.rrd:InOctets:AVERAGE
DEF:D_2=interface-11.rrd:InOctets:AVERAGE
CDEF:C_Input=0,D_1,+,D_2,+,8,*
VDEF:V_Input_AVERAGE=C_Input,AVERAGE
VDEF:V_Input_MAXIMUM=C_Input,MAXIMUM
LINE2:C_Input#00FF00:Input
GPRINT:V_Input_AVERAGE:AVERAGE %6.2lf%s
GPRINT:V_Input_MAXIMUM:MAXIMUM %6.2lf%s\\l
DEF:D_3=interface-12.rrd:OutOctets:AVERAGE
DEF:D_4=interface-11.rrd:OutOctets:AVERAGE
CDEF:C_Output=0,D_3,+,D_4,+,8,*
VDEF:V_Output_AVERAGE=C_Output,AVERAGE
VDEF:V_Output_MAXIMUM=C_Output,MAXIMUM
LINE2:C_Output#0000FF:Output
GPRINT:V_Output_AVERAGE:AVERAGE %6.2lf%s
GPRINT:V_Output_MAXIMUM:MAXIMUM %6.2lf%s\\l
VDEF:V_Input95=C_Input,95,PERCENT
VDEF:V_Output95=C_Output,95,PERCENT
VDEF:V_total95=V_Input95,V_Output95,MAX # <-- this one fails!
HRULE:V_Input95#009900:Input 95PCT
HRULE:V_Output95#000099:Output 95PCT
HRULE:V_total95#FF0000:total 95PCT
It fails with: variable 'V_Input95' not DEF nor CDEF in VDEF 'V_total95'
I cannot use a VDEF on VDEF's it seems... Suggestions?
Loading...