Files

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

116 lines
4.4 KiB
PHP
Raw Permalink Normal View History

2016-09-13 05:59:33 +03:00
<?php
2020-09-21 15:40:17 +02:00
2019-04-11 23:26:42 -05:00
require 'includes/html/graphs/common.inc.php';
2016-09-13 05:59:33 +03:00
if ($width > '500') {
$descr_len = $bigdescrlen;
} else {
$descr_len = $smalldescrlen;
}
if ($printtotal === 1) {
$descr_len += '2';
$unitlen += '2';
}
$unit_text = str_pad(truncate($unit_text, $unitlen), $unitlen);
if ($width > '500') {
$rrd_options .= " COMMENT:'" . substr(str_pad($unit_text, ($descr_len + 10)), 0, ($descr_len + 10)) . "Now Min Max Avg\l'";
2016-09-13 05:59:33 +03:00
if ($printtotal === 1) {
$rrd_options .= " COMMENT:'Total '";
}
$rrd_options .= " COMMENT:'\l'";
2016-09-13 05:59:33 +03:00
} else {
$rrd_options .= " COMMENT:'" . substr(str_pad($unit_text, ($descr_len + 10)), 0, ($descr_len + 10)) . "Now Min Max Avg\l'";
2016-09-13 05:59:33 +03:00
}
foreach ($rrd_list as $rrd) {
if ($rrd['colour']) {
$colour = $rrd['colour'];
} else {
2019-06-23 00:29:12 -05:00
if (! \LibreNMS\Config::get("graph_colours.$colours.$colour_iter")) {
2016-09-13 05:59:33 +03:00
$colour_iter = 0;
}
2019-06-23 00:29:12 -05:00
$colour = \LibreNMS\Config::get("graph_colours.$colours.$colour_iter");
2016-09-13 05:59:33 +03:00
$colour_iter++;
}
$ds = $rrd['ds'];
$filename = $rrd['filename'];
2021-03-28 17:25:30 -05:00
$descr = \LibreNMS\Data\Store\Rrd::fixedSafeDescr($rrd['descr'], $descr_len);
2016-09-13 05:59:33 +03:00
$id = 'ds' . $i;
$rrd_options .= ' DEF:' . $rrd['ds'] . $i . '=' . $rrd['filename'] . ':' . $rrd['ds'] . ':AVERAGE ';
if ($simple_rrd) {
$rrd_options .= ' CDEF:' . $rrd['ds'] . $i . 'min=' . $rrd['ds'] . $i . ' ';
$rrd_options .= ' CDEF:' . $rrd['ds'] . $i . 'max=' . $rrd['ds'] . $i . ' ';
} else {
$rrd_options .= ' DEF:' . $rrd['ds'] . $i . 'min=' . $rrd['filename'] . ':' . $rrd['ds'] . ':MIN ';
$rrd_options .= ' DEF:' . $rrd['ds'] . $i . 'max=' . $rrd['filename'] . ':' . $rrd['ds'] . ':MAX ';
}
if ($_GET['previous']) {
$rrd_options .= ' DEF:' . $i . 'X=' . $rrd['filename'] . ':' . $rrd['ds'] . ':AVERAGE:start=' . $prev_from . ':end=' . $from;
$rrd_options .= ' SHIFT:' . $i . "X:$period";
$thingX .= $seperatorX . $i . 'X,UN,0,' . $i . 'X,IF';
$plusesX .= $plusX;
$seperatorX = ',';
$plusX = ',+';
}
if ($printtotal === 1) {
$rrd_options .= ' VDEF:tot' . $rrd['ds'] . $i . '=' . $rrd['ds'] . $i . ',TOTAL';
}
$g_defname = $rrd['ds'];
if (is_numeric($multiplier)) {
$g_defname = $rrd['ds'] . '_cdef';
$rrd_options .= ' CDEF:' . $g_defname . $i . '=' . $rrd['ds'] . $i . ',' . $multiplier . ',*';
$rrd_options .= ' CDEF:' . $g_defname . $i . 'min=' . $rrd['ds'] . $i . 'min,' . $multiplier . ',*';
$rrd_options .= ' CDEF:' . $g_defname . $i . 'max=' . $rrd['ds'] . $i . 'max,' . $multiplier . ',*';
} elseif (is_numeric($divider)) {
$g_defname = $rrd['ds'] . '_cdef';
$rrd_options .= ' CDEF:' . $g_defname . $i . '=' . $rrd['ds'] . $i . ',' . $divider . ',/';
$rrd_options .= ' CDEF:' . $g_defname . $i . 'min=' . $rrd['ds'] . $i . 'min,' . $divider . ',/';
$rrd_options .= ' CDEF:' . $g_defname . $i . 'max=' . $rrd['ds'] . $i . 'max,' . $divider . ',/';
}
if (isset($text_orig) && $text_orig) {
$t_defname = $rrd['ds'];
} else {
$t_defname = $g_defname;
}
if ($i && ($dostack === 1)) {
$stack = ':STACK';
}
$rrd_options .= ' LINE2:' . $g_defname . $i . '#' . $colour . ":'" . $descr . "'$stack";
if ($addarea === 1) {
$rrd_options .= ' AREA:' . $g_defname . $i . '#' . $colour . $transparency . ":''$stack";
}
2020-06-25 21:51:55 +02:00
$rrd_options .= ' GPRINT:' . $t_defname . $i . ':LAST:%6.' . $float_precision . 'lf%s GPRINT:' . $t_defname . $i . 'min:MIN:%6.' . $float_precision . 'lf%s';
$rrd_options .= ' GPRINT:' . $t_defname . $i . 'max:MAX:%6.' . $float_precision . 'lf%s GPRINT:' . $t_defname . $i . ":AVERAGE:'%6." . $float_precision . "lf%s\\n'";
2016-09-13 05:59:33 +03:00
if ($printtotal === 1) {
2021-03-28 17:25:30 -05:00
$rrd_options .= ' GPRINT:tot' . $rrd['ds'] . $i . ':%6.' . $float_precision . "lf%s'" . \Rrd::safeDescr($total_units) . "'";
2016-09-13 05:59:33 +03:00
}
$rrd_options .= " COMMENT:'\\n'";
}//end foreach
if ($_GET['previous'] == 'yes') {
if (is_numeric($multiplier)) {
$rrd_options .= ' CDEF:X=' . $thingX . $plusesX . ',' . $multiplier . ',*';
} elseif (is_numeric($divider)) {
$rrd_options .= ' CDEF:X=' . $thingX . $plusesX . ',' . $divider . ',/';
} else {
$rrd_options .= ' CDEF:X=' . $thingX . $plusesX;
}
$rrd_options .= ' HRULE:0#555555';
}