From a3b2db29b4f4cf2ed228d629a76d3ca36682db5f Mon Sep 17 00:00:00 2001 From: Adam Amstrong Date: Fri, 20 Apr 2012 11:27:31 +0000 Subject: [PATCH] more graph improvements git-svn-id: http://www.observium.org/svn/observer/trunk@3065 61d68cd4-352d-0410-923a-c4978735b2b8 --- html/includes/graphs/device/bits.inc.php | 7 +- .../graphs/generic_multi_bits.inc.php | 33 ++++++ .../graphs/generic_multi_data.inc.php | 109 ++++++++++++++++++ html/includes/graphs/generic_simplex.inc.php | 39 ++++++- html/includes/graphs/multiport/bits.inc.php | 2 +- 5 files changed, 184 insertions(+), 6 deletions(-) create mode 100644 html/includes/graphs/generic_multi_data.inc.php diff --git a/html/includes/graphs/device/bits.inc.php b/html/includes/graphs/device/bits.inc.php index 5e9a7c5b1..b843760ff 100644 --- a/html/includes/graphs/device/bits.inc.php +++ b/html/includes/graphs/device/bits.inc.php @@ -61,9 +61,10 @@ $graph_title .= "::bits"; $colour_line_in = "006600"; $colour_line_out = "000099"; -$colour_area_in = "CDEB8B"; -$colour_area_out = "C3D9FF"; +$colour_area_in = "91B13C"; +$colour_area_out = "8080BD"; -include("includes/graphs/generic_multi_bits_separated.inc.php"); +#include("includes/graphs/generic_multi_bits_separated.inc.php"); +include("includes/graphs/generic_multi_data.inc.php"); ?> diff --git a/html/includes/graphs/generic_multi_bits.inc.php b/html/includes/graphs/generic_multi_bits.inc.php index f37639866..72365f4a6 100644 --- a/html/includes/graphs/generic_multi_bits.inc.php +++ b/html/includes/graphs/generic_multi_bits.inc.php @@ -18,6 +18,19 @@ foreach ($rrd_filenames as $key => $rrd_filename) $pluses .= $plus; $seperator = ","; $plus = ",+"; + + if($_GET['previous']) + { + $rrd_options .= " DEF:".$in."octets" . $i . "X=".$rrd_filename.":".$ds_in.":AVERAGE:start=".$prev_from.":end=".$from; + $rrd_options .= " DEF:".$out."octets" . $i . "X=".$rrd_filename.":".$ds_out.":AVERAGE:start=".$prev_from.":end=".$from; + $rrd_options .= " SHIFT:".$in."octets" . $i . "X:$period"; + $rrd_options .= " SHIFT:".$out."octets" . $i . "X:$period"; + $in_thingX .= $seperatorX . "inoctets" . $i . "X,UN,0," . "inoctets" . $i . "X,IF"; + $out_thingX .= $seperatorX . "outoctets" . $i . "X,UN,0," . "outoctets" . $i . "X,IF"; + $plusesX .= $plusX; + $seperatorX = ","; + $plusX = ",+"; + } $i++; } @@ -34,6 +47,19 @@ if ($i) $rrd_options .= " VDEF:95thout=outbits,95,PERCENT"; $rrd_options .= " VDEF:d95thout=doutbits,5,PERCENT"; + if($_GET['previous'] == "yes") + { + $rrd_options .= " CDEF:".$in."octetsX=" . $in_thingX . $pluses; + $rrd_options .= " CDEF:".$out."octetsX=" . $out_thingX . $pluses; + $rrd_options .= " CDEF:doutoctetsX=outoctetsX,-1,*"; + $rrd_options .= " CDEF:inbitsX=inoctetsX,8,*"; + $rrd_options .= " CDEF:outbitsX=outoctetsX,8,*"; + $rrd_options .= " CDEF:doutbitsX=doutoctetsX,8,*"; + $rrd_options .= " VDEF:95thinX=inbitsX,95,PERCENT"; + $rrd_options .= " VDEF:95thoutX=outbitsX,95,PERCENT"; + $rrd_options .= " VDEF:d95thoutX=doutbitsX,5,PERCENT"; + } + if ($legend == 'no' || $legend == '1') { $rrd_options .= " AREA:inbits#".$colour_area_in.":"; @@ -58,6 +84,13 @@ if ($i) $rrd_options .= " LINE1:95thin#aa0000"; $rrd_options .= " LINE1:d95thout#aa0000"; + + if($_GET['previous'] == "yes") + { + $rrd_options .= " AREA:inbitsX#9999966:"; + $rrd_options .= " AREA:doutbitsX#99999966:"; + } + } #$rrd_options .= " HRULE:0#999999"; diff --git a/html/includes/graphs/generic_multi_data.inc.php b/html/includes/graphs/generic_multi_data.inc.php new file mode 100644 index 000000000..9bc4fcb8f --- /dev/null +++ b/html/includes/graphs/generic_multi_data.inc.php @@ -0,0 +1,109 @@ + $rrd_filename) +{ + if ($rrd_inverted[$key]) { $in = 'out'; $out = 'in'; } else { $in = 'in'; $out = 'out'; } + + $rrd_options .= " DEF:".$in."octets" . $i . "=".$rrd_filename.":".$ds_in.":AVERAGE"; + $rrd_options .= " DEF:".$out."octets" . $i . "=".$rrd_filename.":".$ds_out.":AVERAGE"; + $in_thing .= $seperator . "inoctets" . $i . ",UN,0," . "inoctets" . $i . ",IF"; + $out_thing .= $seperator . "outoctets" . $i . ",UN,0," . "outoctets" . $i . ",IF"; + $pluses .= $plus; + $seperator = ","; + $plus = ",+"; + + if($_GET['previous']) + { + $rrd_options .= " DEF:".$in."octets" . $i . "X=".$rrd_filename.":".$ds_in.":AVERAGE:start=".$prev_from.":end=".$from; + $rrd_options .= " DEF:".$out."octets" . $i . "X=".$rrd_filename.":".$ds_out.":AVERAGE:start=".$prev_from.":end=".$from; + $rrd_options .= " SHIFT:".$in."octets" . $i . "X:$period"; + $rrd_options .= " SHIFT:".$out."octets" . $i . "X:$period"; + $in_thingX .= $seperatorX . "inoctets" . $i . "X,UN,0," . "inoctets" . $i . "X,IF"; + $out_thingX .= $seperatorX . "outoctets" . $i . "X,UN,0," . "outoctets" . $i . "X,IF"; + $plusesX .= $plusX; + $seperatorX = ","; + $plusX = ",+"; + } + $i++; +} + +if ($i) +{ + if ($inverse) { $in = 'out'; $out = 'in'; } else { $in = 'in'; $out = 'out'; } + $rrd_options .= " CDEF:".$in."octets=" . $in_thing . $pluses; + $rrd_options .= " CDEF:".$out."octets=" . $out_thing . $pluses; + $rrd_options .= " CDEF:doutoctets=outoctets,-1,*"; + $rrd_options .= " CDEF:inbits=inoctets,8,*"; + $rrd_options .= " CDEF:outbits=outoctets,8,*"; + $rrd_options .= " CDEF:doutbits=doutoctets,8,*"; + $rrd_options .= " VDEF:95thin=inbits,95,PERCENT"; + $rrd_options .= " VDEF:95thout=outbits,95,PERCENT"; + $rrd_options .= " VDEF:d95thout=doutbits,5,PERCENT"; + + if($_GET['previous'] == "yes") + { + $rrd_options .= " CDEF:".$in."octetsX=" . $in_thingX . $pluses; + $rrd_options .= " CDEF:".$out."octetsX=" . $out_thingX . $pluses; + $rrd_options .= " CDEF:doutoctetsX=outoctetsX,-1,*"; + $rrd_options .= " CDEF:inbitsX=inoctetsX,8,*"; + $rrd_options .= " CDEF:outbitsX=outoctetsX,8,*"; + $rrd_options .= " CDEF:doutbitsX=doutoctetsX,8,*"; + $rrd_options .= " VDEF:95thinX=inbitsX,95,PERCENT"; + $rrd_options .= " VDEF:95thoutX=outbitsX,95,PERCENT"; + $rrd_options .= " VDEF:d95thoutX=doutbitsX,5,PERCENT"; + } + + if ($legend == 'no' || $legend == '1') + { + $rrd_options .= " AREA:in".$format."#".$colour_area_in.":"; +# $rrd_options .= " LINE1.25:in".$format."#".$colour_line_in.":"; + $rrd_options .= " AREA:dout".$format."#".$colour_area_out.":"; +# $rrd_options .= " LINE1.25:dout".$format."#".$colour_line_out.":"; + } else { + $rrd_options .= " AREA:in".$format."#".$colour_area_in.":"; + $rrd_options .= " COMMENT:'bps Now Ave Max 95th %\\n'"; +# $rrd_options .= " LINE1.25:in".$format."#".$colour_line_in.":In\ "; + $rrd_options .= " GPRINT:in".$format.":LAST:%6.2lf%s"; + $rrd_options .= " GPRINT:in".$format.":AVERAGE:%6.2lf%s"; + $rrd_options .= " GPRINT:in".$format.":MAX:%6.2lf%s"; + $rrd_options .= " GPRINT:95thin:%6.2lf%s\\\\n"; + $rrd_options .= " AREA:dout".$format."#".$colour_area_out.":"; +# $rrd_options .= " LINE1.25:dout".$format."#".$colour_line_out.":Out"; + $rrd_options .= " GPRINT:out".$format.":LAST:%6.2lf%s"; + $rrd_options .= " GPRINT:out".$format.":AVERAGE:%6.2lf%s"; + $rrd_options .= " GPRINT:out".$format.":MAX:%6.2lf%s"; + $rrd_options .= " GPRINT:95thout:%6.2lf%s\\\\n"; + } + + $rrd_options .= " LINE1:95thin#aa0000"; + $rrd_options .= " LINE1:d95thout#aa0000"; + + if($_GET['previous'] == "yes") + { + $rrd_options .= " AREA:in".$format."X#99999999:"; + $rrd_options .= " AREA:dout".$format."X#99999999:"; + $rrd_options .= " LINE1.25:in".$format."X#666666:"; + $rrd_options .= " LINE1.25:dout".$format."X#666666:"; + } + +} + +#$rrd_options .= " HRULE:0#999999"; + +?> diff --git a/html/includes/graphs/generic_simplex.inc.php b/html/includes/graphs/generic_simplex.inc.php index 916debaf1..b554f377d 100644 --- a/html/includes/graphs/generic_simplex.inc.php +++ b/html/includes/graphs/generic_simplex.inc.php @@ -18,7 +18,6 @@ if ($multiplier) $rrd_options .= " DEF:".$ds."=".$rrd_filename.":".$ds.":AVERAGE"; $rrd_options .= " DEF:".$ds."_max=".$rrd_filename.":".$ds.":MAX"; } - if ($print_total) { $rrd_options .= " VDEF:".$ds."_total=ds,TOTAL"; @@ -28,11 +27,42 @@ if ($percentile) { $rrd_options .= " VDEF:".$ds."_percentile=".$ds.",".$percentile.",PERCENT"; } - if ($graph_max) { $rrd_options .= " AREA:".$ds."_max#".$colour_area_max.":"; } + +if($_GET['previous'] == "yes") +{ + if ($multiplier) + { + $rrd_options .= " DEF:".$ds."_oX=".$rrd_filename.":".$ds.":AVERAGE:start=".$prev_from.":end=".$from; + $rrd_options .= " DEF:".$ds."_max_oX=".$rrd_filename.":".$ds.":MAX:start=".$prev_from.":end=".$from; + $rrd_options .= " SHIFT:".$ds."_oX:$period"; + $rrd_options .= " SHIFT:".$ds."_max_oX:$period"; + $rrd_options .= " CDEF:".$ds."X=".$ds."_oX,$multiplier,*"; + $rrd_options .= " CDEF:".$ds."_maxX=".$ds."_max_oX,$multiplier,*"; + } else { + $rrd_options .= " DEF:".$ds."X=".$rrd_filename.":".$ds.":AVERAGE:start=".$prev_from.":end=".$from; + $rrd_options .= " DEF:".$ds."_maxX=".$rrd_filename.":".$ds.":MAX:start=".$prev_from.":end=".$from; + $rrd_options .= " SHIFT:".$ds."X:$period"; + $rrd_options .= " SHIFT:".$ds."_maxX:$period"; + } + if ($print_total) + { + $rrd_options .= " VDEF:".$ds."_totalX=ds,TOTAL"; + } + if ($percentile) + { + $rrd_options .= " VDEF:".$ds."_percentileX=".$ds.",".$percentile.",PERCENT"; + } +# if ($graph_max) +# { +# $rrd_options .= " AREA:".$ds."_max#".$colour_area_max.":"; +# } +} + + $rrd_options .= " AREA:".$ds."#".$colour_area.":"; $rrd_options .= " COMMENT:'".$unit_text."Now Ave Max"; @@ -65,4 +95,9 @@ if ($percentile) $rrd_options .= " LINE1:".$ds."_percentile#aa0000"; } +if($_GET['previous'] == "yes") +{ + $rrd_options .= " LINE1.25:".$ds."X#666666:'Prev \\\\n'"; +} + ?> diff --git a/html/includes/graphs/multiport/bits.inc.php b/html/includes/graphs/multiport/bits.inc.php index 368d9abc4..abb20a7c7 100644 --- a/html/includes/graphs/multiport/bits.inc.php +++ b/html/includes/graphs/multiport/bits.inc.php @@ -26,6 +26,6 @@ $colour_line_out = "000099"; $colour_area_in = "CDEB8B"; $colour_area_out = "C3D9FF"; -include("includes/graphs/generic_multi_bits.inc.php"); +include("includes/graphs/generic_multi_data.inc.php"); ?>