fix more graph types

git-svn-id: http://www.observium.org/svn/observer/trunk@2496 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
Adam Amstrong
2011-09-18 22:55:29 +00:00
parent 0e6284b5c3
commit 5c09909be8
9 changed files with 208 additions and 262 deletions

View File

@ -5,8 +5,6 @@ function rrdtool_graph($graph_file, $options)
global $config, $debug; global $config, $debug;
if($debug) { echo("$options"); }
if ($config['rrdcached']) if ($config['rrdcached'])
{ {
$command = $config['rrdtool'] . " --daemon " . $config['rrdcached'] . " -"; $command = $config['rrdtool'] . " --daemon " . $config['rrdcached'] . " -";
@ -31,8 +29,6 @@ function rrdtool_graph($graph_file, $options)
// 1 => readable handle connected to child stdout // 1 => readable handle connected to child stdout
// Any error output will be appended to /tmp/error-output.txt // Any error output will be appended to /tmp/error-output.txt
# echo (strlen("graph $graph_file $options"));
fwrite($pipes[0], "graph $graph_file $options"); fwrite($pipes[0], "graph $graph_file $options");
fclose($pipes[0]); fclose($pipes[0]);
fclose($pipes[1]); fclose($pipes[1]);
@ -40,7 +36,15 @@ function rrdtool_graph($graph_file, $options)
// It is important that you close any pipes before calling // It is important that you close any pipes before calling
// proc_close in order to avoid a deadlock // proc_close in order to avoid a deadlock
$return_value = proc_close($process); $return_value = proc_close($process);
# echo "command returned $return_value\n";
if($debug)
{
echo("<p>");
if($debug) { echo("graph $graph_file $options"); }
echo("</p><p>");
echo "command returned $return_value\n";
echo("</p>");
}
} }
} }

View File

@ -6,46 +6,35 @@ $device = device_by_id_cache($id);
$rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-icmp.rrd"; $rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-icmp.rrd";
$rrd_options .= " DEF:icmpInMsgs=$rrd_filename:icmpInMsgs:AVERAGE"; $stats = array('icmpInMsgs' => '00cc00',
$rrd_options .= " DEF:icmpOutMsgs=$rrd_filename:icmpOutMsgs:AVERAGE"; 'icmpOutMsgs' => '006600',
$rrd_options .= " DEF:icmpInErrors=$rrd_filename:icmpInErrors:AVERAGE"; 'icmpInErrors' => 'cc0000',
$rrd_options .= " DEF:icmpOutErrors=$rrd_filename:icmpOutErrors:AVERAGE"; 'icmpOutErrors' => '660000',
$rrd_options .= " DEF:icmpInEchos=$rrd_filename:icmpInEchos:AVERAGE"; 'icmpInEchos' => '0066cc',
$rrd_options .= " DEF:icmpOutEchos=$rrd_filename:icmpOutEchos:AVERAGE"; 'icmpOutEchos' => '003399',
$rrd_options .= " DEF:icmpInEchoReps=$rrd_filename:icmpInEchoReps:AVERAGE"; 'icmpInEchoReps' => 'cc00cc',
$rrd_options .= " DEF:icmpOutEchoReps=$rrd_filename:icmpOutEchoReps:AVERAGE"; 'icmpOutEchoReps' => '990099');
$rrd_options .= " COMMENT:Packets/sec\ \ \ \ Current\ \ \ \ Average\ \ \ Maximum\\\\n";
$rrd_options .= " LINE1.25:icmpInMsgs#00cc00:InMsgs "; $i=0;
$rrd_options .= " GPRINT:icmpInMsgs:LAST:\ \ \ \ \ %6.2lf%s";
$rrd_options .= " GPRINT:icmpInMsgs:AVERAGE:\ \ %6.2lf%s"; foreach($stats as $stat => $colour)
$rrd_options .= " GPRINT:icmpInMsgs:MAX:\ %6.2lf%s\\\\n"; {
$rrd_options .= " LINE1.25:icmpOutMsgs#006600:OutMsgs "; $i++;
$rrd_options .= " GPRINT:icmpOutMsgs:LAST:\ \ \ \ %6.2lf%s"; $rrd_list[$i]['filename'] = $rrd_filename;
$rrd_options .= " GPRINT:icmpOutMsgs:AVERAGE:\ \ %6.2lf%s"; $rrd_list[$i]['descr'] = str_replace("icmp", "", $stat);
$rrd_options .= " GPRINT:icmpOutMsgs:MAX:\ %6.2lf%s\\\\n"; $rrd_list[$i]['rra'] = $stat;
$rrd_options .= " LINE1.25:icmpInErrors#cc0000:InErrors "; if(strpos($stat, "Out") !== FALSE)
$rrd_options .= " GPRINT:icmpInErrors:LAST:\ \ \ %6.2lf%s"; {
$rrd_options .= " GPRINT:icmpInErrors:AVERAGE:\ \ %6.2lf%s"; $rrd_list[$i]['invert'] = TRUE;
$rrd_options .= " GPRINT:icmpInErrors:MAX:\ %6.2lf%s\\\\n"; }
$rrd_options .= " LINE1.25:icmpOutErrors#660000:OutErrors "; }
$rrd_options .= " GPRINT:icmpOutErrors:LAST:\ \ %6.2lf%s";
$rrd_options .= " GPRINT:icmpOutErrors:AVERAGE:\ \ %6.2lf%s"; $colours='mixed';
$rrd_options .= " GPRINT:icmpOutErrors:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:icmpInEchos#0066cc:InEchos "; $scale_min = "0";
$rrd_options .= " GPRINT:icmpInEchos:LAST:\ \ \ \ %6.2lf%s"; $nototal = 1;
$rrd_options .= " GPRINT:icmpInEchos:AVERAGE:\ \ %6.2lf%s"; $basicrrd = 1;
$rrd_options .= " GPRINT:icmpInEchos:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:icmpOutEchos#003399:OutEchos "; include("includes/graphs/generic_multi_line.inc.php");
$rrd_options .= " GPRINT:icmpOutEchos:LAST:\ \ \ %6.2lf%s";
$rrd_options .= " GPRINT:icmpOutEchos:AVERAGE:\ \ %6.2lf%s";
$rrd_options .= " GPRINT:icmpOutEchos:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:icmpInEchoReps#cc00cc:InEchoReps ";
$rrd_options .= " GPRINT:icmpInEchoReps:LAST:\ %6.2lf%s";
$rrd_options .= " GPRINT:icmpInEchoReps:AVERAGE:\ \ %6.2lf%s";
$rrd_options .= " GPRINT:icmpInEchoReps:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:icmpOutEchoReps#990099:OutEchoReps";
$rrd_options .= " GPRINT:icmpOutEchoReps:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:icmpOutEchoReps:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:icmpOutEchoReps:MAX:\ %6.2lf%s\\\\n";
?> ?>

View File

@ -6,64 +6,35 @@ $device = device_by_id_cache($id);
$rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-icmp.rrd"; $rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-icmp.rrd";
$rrd_options .= " DEF:InSrcQuenchs=$rrd_filename:icmpInSrcQuenchs:AVERAGE"; $stats = array('icmpInSrcQuenchs' => array(),
$rrd_options .= " DEF:OutSrcQuenchs=$rrd_filename:icmpOutSrcQuenchs:AVERAGE"; 'icmpOutSrcQuenchs' => array(),
$rrd_options .= " DEF:InRedirects=$rrd_filename:icmpInRedirects:AVERAGE"; 'icmpInRedirects' => array(),
$rrd_options .= " DEF:OutRedirects=$rrd_filename:icmpOutRedirects:AVERAGE"; 'icmpOutRedirects' => array(),
$rrd_options .= " DEF:InAddrMasks=$rrd_filename:icmpInAddrMasks:AVERAGE"; 'icmpInAddrMasks' => array(),
$rrd_options .= " DEF:OutAddrMasks=$rrd_filename:icmpOutAddrMasks:AVERAGE"; 'icmpOutAddrMasks' => array(),
$rrd_options .= " DEF:InAddrMaskReps=$rrd_filename:icmpInAddrMaskReps:AVERAGE"; 'icmpInAddrMaskReps' => array(),
$rrd_options .= " DEF:OutAddrMaskReps=$rrd_filename:icmpOutAddrMaskReps:AVERAGE"; 'icmpOutAddrMaskReps' => array());
$rrd_options .= " DEF:InSrcQuenchs_m=$rrd_filename:icmpInSrcQuenchs:MAX";
$rrd_options .= " DEF:OutSrcQuenchs_m=$rrd_filename:icmpOutSrcQuenchs:MAX";
$rrd_options .= " DEF:InRedirects_m=$rrd_filename:icmpInRedirects:MAX";
$rrd_options .= " DEF:OutRedirects_m=$rrd_filename:icmpOutRedirects:MAX";
$rrd_options .= " DEF:InAddrMasks_m=$rrd_filename:icmpInAddrMasks:MAX";
$rrd_options .= " DEF:OutAddrMasks_m=$rrd_filename:icmpOutAddrMasks:MAX";
$rrd_options .= " DEF:InAddrMaskReps_m=$rrd_filename:icmpInAddrMaskReps:MAX";
$rrd_options .= " DEF:OutAddrMaskReps_m=$rrd_filename:icmpOutAddrMaskReps:MAX";
$rrd_options .= " CDEF:OutSrcQuenchs_Inv=OutSrcQuenchs,-1,*"; $i=0;
$rrd_options .= " CDEF:OutRedirects_Inv=OutRedirects,-1,*";
$rrd_options .= " CDEF:OutAddrMasks_Inv=OutAddrMasks,-1,*";
$rrd_options .= " CDEF:OutAddrMaskReps_Inv=OutAddrMaskReps,-1,*";
$rrd_options .= " COMMENT:Packets/sec\ \ \ \ Current\ \ \ \ Average\ \ \ Maximum\\\\n"; foreach($stats as $stat => $array)
{
$i++;
$rrd_list[$i]['filename'] = $rrd_filename;
$rrd_list[$i]['descr'] = str_replace("icmp", "", $stat);
$rrd_list[$i]['rra'] = $stat;
if(strpos($stat, "Out") !== FALSE)
{
$rrd_list[$i]['invert'] = TRUE;
}
}
$rrd_options .= " LINE1.25:InSrcQuenchs#00cc00:'InSrcQuenchs '"; $colours='mixed';
$rrd_options .= " GPRINT:InSrcQuenchs:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:InSrcQuenchs:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:InSrcQuenchs_m:MAX:%6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:OutSrcQuenchs_Inv#006600:'OutSrcQuenchs '";
$rrd_options .= " GPRINT:OutSrcQuenchs:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:OutSrcQuenchs:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:OutSrcQuenchs_m:MAX:%6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:InRedirects#cc0000:'InRedirects '"; $scale_min = "0";
$rrd_options .= " GPRINT:InRedirects:LAST:%6.2lf%s"; $nototal = 1;
$rrd_options .= " GPRINT:InRedirects:AVERAGE:%6.2lf%s"; $basicrrd = 1;
$rrd_options .= " GPRINT:InRedirects_m:MAX:'%6.2lf%s\\n'";
$rrd_options .= " LINE1.25:OutRedirects_Inv#660000:'OutRedirects '";
$rrd_options .= " GPRINT:OutRedirects:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:OutRedirects:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:OutRedirects_m:MAX:'%6.2lf%s\\n'";
$rrd_options .= " LINE1.25:InAddrMasks#0066cc:'InAddrMasks '"; include("includes/graphs/generic_multi_line.inc.php");
$rrd_options .= " GPRINT:InAddrMasks:LAST:'%6.2lf%s'";
$rrd_options .= " GPRINT:InAddrMasks:AVERAGE:'%6.2lf%s'";
$rrd_options .= " GPRINT:InAddrMasks:MAX:'%6.2lf%s\\n'";
$rrd_options .= " LINE1.25:OutAddrMasks_Inv#003399:'OutAddrMasks '";
$rrd_options .= " GPRINT:OutAddrMasks:LAST:'%6.2lf%s'";
$rrd_options .= " GPRINT:OutAddrMasks:AVERAGE:'%6.2lf%s'";
$rrd_options .= " GPRINT:OutAddrMasks_m:MAX:'%6.2lf%s\\n'";
$rrd_options .= " LINE1.25:InAddrMaskReps#cc00cc:'InAddrMaskReps '";
$rrd_options .= " GPRINT:InAddrMaskReps:LAST:'%6.2lf%s'";
$rrd_options .= " GPRINT:InAddrMaskReps:AVERAGE:'%6.2lf%s'";
$rrd_options .= " GPRINT:InAddrMaskReps:MAX:'%6.2lf%s\\n'";
$rrd_options .= " LINE1.25:OutAddrMaskReps_Inv#990099:'OutAddrMaskReps'";
$rrd_options .= " GPRINT:OutAddrMaskReps:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:OutAddrMaskReps:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:OutAddrMaskReps_m:MAX:%6.2lf%s\\\\n";
?> ?>

View File

@ -5,41 +5,33 @@ $device = device_by_id_cache($id);
$rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-ip.rrd"; $rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-ip.rrd";
$rrd_options .= " DEF:ipForwDatagrams=$rrd_filename:ipForwDatagrams:AVERAGE"; $stats = array('ipForwDatagrams' => array(),
$rrd_options .= " DEF:ipInDelivers=$rrd_filename:ipInDelivers:AVERAGE"; 'ipInDelivers' => array(),
$rrd_options .= " DEF:ipInReceives=$rrd_filename:ipInReceives:AVERAGE"; 'ipInReceives' => array(),
$rrd_options .= " DEF:ipOutRequests=$rrd_filename:ipOutRequests:AVERAGE"; 'ipOutRequests' => array(),
$rrd_options .= " DEF:ipInDiscards=$rrd_filename:ipInDiscards:AVERAGE"; 'ipInDiscards' => array(),
$rrd_options .= " DEF:ipOutDiscards=$rrd_filename:ipOutDiscards:AVERAGE"; 'ipOutDiscards' => array(),
$rrd_options .= " DEF:ipOutNoRoutes=$rrd_filename:ipInDiscards:AVERAGE"; 'ipOutNoRoutes' => array());
$rrd_options .= " COMMENT:Packets/sec\ \ \ \ Current\ \ \ Average\ \ \ Maximum\\\\n";
$rrd_options .= " LINE1.25:ipForwDatagrams#cc0000:ForwDgrams\ "; $i=0;
$rrd_options .= " GPRINT:ipForwDatagrams:LAST:%6.2lf%s"; foreach($stats as $stat => $array)
$rrd_options .= " GPRINT:ipForwDatagrams:AVERAGE:\ %6.2lf%s"; {
$rrd_options .= " GPRINT:ipForwDatagrams:MAX:\ %6.2lf%s\\\\n"; $i++;
$rrd_options .= " LINE1.25:ipInDelivers#00cc00:InDelivers\ "; $rrd_list[$i]['filename'] = $rrd_filename;
$rrd_options .= " GPRINT:ipInDelivers:LAST:%6.2lf%s"; $rrd_list[$i]['descr'] = str_replace("ip", "", $stat);
$rrd_options .= " GPRINT:ipInDelivers:AVERAGE:\ %6.2lf%s"; $rrd_list[$i]['rra'] = $stat;
$rrd_options .= " GPRINT:ipInDelivers:MAX:\ %6.2lf%s\\\\n"; if(strpos($stat, "Out") !== FALSE)
$rrd_options .= " LINE1.25:ipInReceives#006600:InReceives\ "; {
$rrd_options .= " GPRINT:ipInReceives:LAST:%6.2lf%s"; $rrd_list[$i]['invert'] = TRUE;
$rrd_options .= " GPRINT:ipInReceives:AVERAGE:\ %6.2lf%s"; }
$rrd_options .= " GPRINT:ipInReceives:MAX:\ %6.2lf%s\\\\n"; }
$rrd_options .= " LINE1.25:ipOutRequests#0000cc:OutRequests";
$rrd_options .= " GPRINT:ipOutRequests:LAST:%6.2lf%s"; $colours='mixed';
$rrd_options .= " GPRINT:ipOutRequests:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:ipOutRequests:MAX:\ %6.2lf%s\\\\n"; $scale_min = "0";
$rrd_options .= " LINE1.25:ipInDiscards#cccc00:InDiscards\ "; $nototal = 1;
$rrd_options .= " GPRINT:ipInDiscards:LAST:%6.2lf%s"; $basicrrd = 1;
$rrd_options .= " GPRINT:ipInDiscards:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:ipInDiscards:MAX:\ %6.2lf%s\\\\n"; include("includes/graphs/generic_multi_line.inc.php");
$rrd_options .= " LINE1.25:ipOutDiscards#330033:OutDiscards";
$rrd_options .= " GPRINT:ipOutDiscards:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:ipOutDiscards:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:ipOutDiscards:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:ipOutNoRoutes#660000:OutNoRoutes";
$rrd_options .= " GPRINT:ipOutNoRoutes:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:ipOutNoRoutes:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:ipOutNoRoutes:MAX:\ %6.2lf%s\\\\n";
?> ?>

View File

@ -6,44 +6,32 @@ $device = device_by_id_cache($id);
$rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-snmp.rrd"; $rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-snmp.rrd";
$rrd_options .= " DEF:snmpInTraps=$rrd_filename:snmpInTraps:AVERAGE"; $stats = array('snmpInTraps',
$rrd_options .= " DEF:snmpOutTraps=$rrd_filename:snmpOutTraps:AVERAGE"; 'snmpOutTraps',
$rrd_options .= " DEF:snmpInTotalReqVars=$rrd_filename:snmpInTotalReqVars:AVERAGE"; 'snmpInTotalReqVars',
$rrd_options .= " DEF:snmpInTotalSetVars=$rrd_filename:snmpInTotalSetVars:AVERAGE"; 'snmpInTotalSetVars',
$rrd_options .= " DEF:snmpOutGetResponses=$rrd_filename:snmpOutGetResponses:AVERAGE"; 'snmpOutGetResponses',
$rrd_options .= " DEF:snmpOutSetRequests=$rrd_filename:snmpOutSetRequests:AVERAGE"; 'snmpOutSetRequests');
$rrd_options .= " DEF:snmpInTraps_max=$rrd_filename:snmpInTraps:MAX"; $i=0;
$rrd_options .= " DEF:snmpOutTraps_max=$rrd_filename:snmpOutTraps:MAX"; foreach($stats as $stat)
$rrd_options .= " DEF:snmpInTotalReqVars_max=$rrd_filename:snmpInTotalReqVars:MAX"; {
$rrd_options .= " DEF:snmpInTotalSetVars_max=$rrd_filename:snmpInTotalSetVars:MAX"; $i++;
$rrd_options .= " DEF:snmpOutGetResponses_max=$rrd_filename:snmpOutGetResponses:MAX"; $rrd_list[$i]['filename'] = $rrd_filename;
$rrd_options .= " DEF:snmpOutSetRequests_max=$rrd_filename:snmpOutSetRequests:MAX"; $rrd_list[$i]['descr'] = str_replace("snmp", "", $stat);
$rrd_list[$i]['rra'] = $stat;
if(strpos($stat, "Out") !== FALSE)
{
$rrd_list[$i]['invert'] = TRUE;
}
}
$rrd_options .= " COMMENT:Packets/sec\ \ \ \ \ \ \ \ Current\ \ Average\ \ Maximum\\\\n"; $colours='mixed';
$rrd_options .= " LINE1.25:snmpInTraps#00cc00:InTraps ";
$rrd_options .= " GPRINT:snmpInTraps:LAST:\ \ \ \ \ \ \ \ %6.2lf%s"; $scale_min = "0";
$rrd_options .= " GPRINT:snmpInTraps:AVERAGE:%6.2lf%s"; $nototal = 1;
$rrd_options .= " GPRINT:snmpInTraps_max:MAX:%6.2lf%s\\\\n"; $basicrrd = 1;
$rrd_options .= " LINE1.25:snmpOutTraps#006600:OutTraps ";
$rrd_options .= " GPRINT:snmpOutTraps:LAST:\ \ \ \ \ \ \ %6.2lf%s"; include("includes/graphs/generic_multi_line.inc.php");
$rrd_options .= " GPRINT:snmpOutTraps:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:snmpOutTraps_max:MAX:%6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:snmpInTotalReqVars#cc0000:InTotalReqVars ";
$rrd_options .= " GPRINT:snmpInTotalReqVars:LAST:\ %6.2lf%s";
$rrd_options .= " GPRINT:snmpInTotalReqVars:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:snmpInTotalReqVars_max:MAX:%6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:snmpInTotalSetVars#660000:InTotalSetVars ";
$rrd_options .= " GPRINT:snmpInTotalSetVars:LAST:\ %6.2lf%s";
$rrd_options .= " GPRINT:snmpInTotalSetVars:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:snmpInTotalSetVars_max:MAX:%6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:snmpOutGetResponses#0066cc:OutGetResponses ";
$rrd_options .= " GPRINT:snmpOutGetResponses:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:snmpOutGetResponses:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:snmpOutGetResponses_max:MAX:%6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:snmpOutSetRequests#003399:OutSetResponses ";
$rrd_options .= " GPRINT:snmpOutSetRequests:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:snmpOutSetRequests:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:snmpOutSetRequests_max:MAX:%6.2lf%s\\\\n";
?> ?>

View File

@ -5,21 +5,27 @@ $device = device_by_id_cache($id);
$rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-snmp.rrd"; $rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-snmp.rrd";
$rrd_options .= " DEF:snmpInPkts=$rrd_filename:snmpInPkts:AVERAGE"; $stats = array('snmpInPkts',
$rrd_options .= " DEF:snmpInPkts_max=$rrd_filename:snmpInPkts:MAX"; 'snmpOutPkts');
$rrd_options .= " DEF:snmpOutPkts=$rrd_filename:snmpOutPkts:AVERAGE";
$rrd_options .= " DEF:snmpOutPkts_max=$rrd_filename:snmpOutPkts:MAX"; $i=0;
$rrd_options .= " CDEF:snmpOutPkts_max_neg=snmpOutPkts_max,-1,*"; foreach($stats as $stat)
$rrd_options .= " CDEF:snmpOutPkts_neg=snmpOutPkts,-1,*"; {
$rrd_options .= " COMMENT:Packets/sec\ \ \ \ Current\ \ \ \ Average\ \ \ Maximum\\\\n"; $i++;
$rrd_options .= " LINE1.25:snmpInPkts#009900:snmpInPkts\ \ "; $rrd_list[$i]['filename'] = $rrd_filename;
$rrd_options .= " GPRINT:snmpInPkts:LAST:%6.2lf%s"; $rrd_list[$i]['descr'] = str_replace("snmp", "", $stat);
$rrd_options .= " GPRINT:snmpInPkts:AVERAGE:\ %6.2lf%s"; $rrd_list[$i]['rra'] = $stat;
$rrd_options .= " GPRINT:snmpInPkts_max:MAX:\ %6.2lf%s\\\\n"; if(strpos($stat, "Out") !== FALSE)
$rrd_options .= " LINE1.25:snmpOutPkts_neg#003399:snmpOutPkts\ "; {
#$rrd_options .= " AREA:snmpOutPkts_max_neg#4466AA::"; $rrd_list[$i]['invert'] = TRUE;
$rrd_options .= " GPRINT:snmpOutPkts:LAST:%6.2lf%s"; }
$rrd_options .= " GPRINT:snmpOutPkts:AVERAGE:\ %6.2lf%s"; }
$rrd_options .= " GPRINT:snmpOutPkts_max:MAX:\ %6.2lf%s\\\\n";
$colours='mixed';
$nototal = 1;
$basicrrd = 1;
include("includes/graphs/generic_multi_line.inc.php");
?> ?>

View File

@ -5,41 +5,26 @@ $device = device_by_id_cache($id);
$rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-tcp.rrd"; $rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-tcp.rrd";
$rrd_options .= " DEF:tcpActiveOpens=$rrd_filename:tcpActiveOpens:AVERAGE"; $stats = array('tcpInSegs','tcpOutSegs','tcpActiveOpens','tcpPassiveOpens','tcpAttemptFails','tcpEstabResets','tcpRetransSegs');
$rrd_options .= " DEF:tcpPassiveOpens=$rrd_filename:tcpPassiveOpens:AVERAGE";
$rrd_options .= " DEF:tcpAttemptFails=$rrd_filename:tcpAttemptFails:AVERAGE"; $i=0;
$rrd_options .= " DEF:tcpEstabResets=$rrd_filename:tcpEstabResets:AVERAGE"; foreach($stats as $stat)
$rrd_options .= " DEF:tcpInSegs=$rrd_filename:tcpInSegs:AVERAGE"; {
$rrd_options .= " DEF:tcpOutSegs=$rrd_filename:tcpOutSegs:AVERAGE"; $i++;
$rrd_options .= " DEF:tcpRetransSegs=$rrd_filename:tcpRetransSegs:AVERAGE"; $rrd_list[$i]['filename'] = $rrd_filename;
$rrd_options .= " COMMENT:Packets/sec\ \ \ \ Current\ \ \ \ Average\ \ \ Maximum\\\\n"; $rrd_list[$i]['descr'] = str_replace("tcp", "", $stat);
$rrd_options .= " LINE1.25:tcpActiveOpens#00cc00:ActiveOpens\ "; $rrd_list[$i]['rra'] = $stat;
$rrd_options .= " GPRINT:tcpActiveOpens:LAST:%6.2lf%s"; if(strpos($stat, "Out") !== FALSE || strpos($stat, "Retrans") !== FALSE || strpos($stat, "Attempt") !== FALSE)
$rrd_options .= " GPRINT:tcpActiveOpens:AVERAGE:\ %6.2lf%s"; {
$rrd_options .= " GPRINT:tcpActiveOpens:MAX:\ %6.2lf%s\\\\n"; $rrd_list[$i]['invert'] = TRUE;
$rrd_options .= " LINE1.25:tcpPassiveOpens#006600:PassiveOpens"; }
$rrd_options .= " GPRINT:tcpPassiveOpens:LAST:%6.2lf%s"; }
$rrd_options .= " GPRINT:tcpPassiveOpens:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:tcpPassiveOpens:MAX:\ %6.2lf%s\\\\n"; $colours='mixed';
$rrd_options .= " LINE1.25:tcpAttemptFails#cc0000:AttemptFails";
$rrd_options .= " GPRINT:tcpAttemptFails:LAST:%6.2lf%s"; $nototal = 1;
$rrd_options .= " GPRINT:tcpAttemptFails:AVERAGE:\ %6.2lf%s"; $basicrrd = 1;
$rrd_options .= " GPRINT:tcpAttemptFails:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:tcpEstabResets#660000:EstabResets\ "; include("includes/graphs/generic_multi_line.inc.php");
$rrd_options .= " GPRINT:tcpEstabResets:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:tcpEstabResets:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:tcpEstabResets:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:tcpInSegs#0066cc:InSegs\ \ \ \ \ \ ";
$rrd_options .= " GPRINT:tcpInSegs:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:tcpInSegs:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:tcpInSegs:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:tcpOutSegs#003399:OutSegs\ \ \ \ \ ";
$rrd_options .= " GPRINT:tcpOutSegs:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:tcpOutSegs:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:tcpOutSegs:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:tcpRetransSegs#cc00cc:RetransSegs\ ";
$rrd_options .= " GPRINT:tcpRetransSegs:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:tcpRetransSegs:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:tcpRetransSegs:MAX:\ %6.2lf%s\\\\n";
?> ?>

View File

@ -5,27 +5,26 @@ $device = device_by_id_cache($id);
$rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-udp.rrd"; $rrd_filename = $config['rrd_dir'] . "/" . $device['hostname'] . "/netstats-udp.rrd";
$rrd_options .= " DEF:udpInDatagrams=$rrd_filename:udpInDatagrams:AVERAGE"; $stats = array('udpInDatagrams','udpOutDatagrams','udpInErrors','udpNoPorts');
$rrd_options .= " DEF:udpOutDatagrams=$rrd_filename:udpOutDatagrams:AVERAGE";
$rrd_options .= " DEF:udpInErrors=$rrd_filename:udpInErrors:AVERAGE";
$rrd_options .= " DEF:udpNoPorts=$rrd_filename:udpNoPorts:AVERAGE";
$rrd_options .= " COMMENT:Packets/sec\ \ \ \ Current\ \ \ \ Average\ \ \ Maximum\\\\n";
$rrd_options .= " LINE1.25:udpInDatagrams#00cc00:InDatagrams\ ";
$rrd_options .= " GPRINT:udpInDatagrams:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:udpInDatagrams:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:udpInDatagrams:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:udpOutDatagrams#006600:OutDatagrams";
$rrd_options .= " GPRINT:udpOutDatagrams:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:udpOutDatagrams:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:udpOutDatagrams:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:udpInErrors#cc0000:InErrors\ \ \ \ ";
$rrd_options .= " GPRINT:udpInErrors:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:udpInErrors:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:udpInErrors:MAX:\ %6.2lf%s\\\\n";
$rrd_options .= " LINE1.25:udpNoPorts#660000:NoPorts\ \ \ \ \ ";
$rrd_options .= " GPRINT:udpNoPorts:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:udpNoPorts:AVERAGE:\ %6.2lf%s";
$rrd_options .= " GPRINT:udpNoPorts:MAX:\ %6.2lf%s\\\\n";
$i=0;
foreach($stats as $stat)
{
$i++;
$rrd_list[$i]['filename'] = $rrd_filename;
$rrd_list[$i]['descr'] = str_replace("udp", "", $stat);
$rrd_list[$i]['rra'] = $stat;
if(strpos($stat, "Out") !== FALSE || strpos($stat, "Retrans") !== FALSE || strpos($stat, "Attempt") !== FALSE)
{
$rrd_list[$i]['invert'] = TRUE;
}
}
$colours='mixed';
$nototal = 1;
$basicrrd = 1;
include("includes/graphs/generic_multi_line.inc.php");
?> ?>

View File

@ -23,24 +23,36 @@ foreach ($rrd_list as $rrd)
$descr = substr(str_pad($descr, 10),0,10); $descr = substr(str_pad($descr, 10),0,10);
$descr = str_replace(":", "\:", $descr); $descr = str_replace(":", "\:", $descr);
$id = $rra."_".$i; $id = "ds".$i;
$rrd_options .= " DEF:".$id."=$filename:$rra:AVERAGE"; $rrd_options .= " DEF:".$id."=$filename:$rra:AVERAGE";
$rrd_options .= " DEF:".$id."min=$filename:$rra:MIN";
$rrd_options .= " DEF:".$id."max=$filename:$rra:MAX";
if ($rrd['invert'] == "1") if(!$basicrrd)
{ {
$rrd_options .= " CDEF:".$id."graph=".$id.",-1,*"; $rrd_options .= " DEF:".$id."min=$filename:$rra:MIN";
$rrd_options .= " LINE1.25:".$id."graph#".$colour.":'$descr'"; $rrd_options .= " DEF:".$id."max=$filename:$rra:MAX";
}
if ($rrd['invert'])
{
$rrd_options .= " CDEF:".$id."i=".$id.",-1,*";
$rrd_options .= " LINE1.25:".$id."i#".$colour.":'$descr'";
} else { } else {
$rrd_options .= " LINE1.25:".$id."#".$colour.":'$descr'"; $rrd_options .= " LINE1.25:".$id."#".$colour.":'$descr'";
} }
$rrd_options .= " GPRINT:".$id.":LAST:%5.2lf%s GPRINT:".$id."min:MIN:%5.2lf%s"; if(!$basicrrd)
$rrd_options .= " GPRINT:".$id."max:MAX:%5.2lf%s GPRINT:".$id.":AVERAGE:%5.2lf%s\\\\n"; {
$rrd_options .= " GPRINT:".$id.":LAST:%5.2lf%s GPRINT:".$id."min:MIN:%5.2lf%s";
$rrd_options .= " GPRINT:".$id."max:MAX:%5.2lf%s GPRINT:".$id.":AVERAGE:'%5.2lf%s\\n'";
} else {
$rrd_options .= " GPRINT:".$id.":LAST:%5.2lf%s GPRINT:".$id.":MIN:%5.2lf%s";
$rrd_options .= " GPRINT:".$id.":MAX:%5.2lf%s GPRINT:".$id.":AVERAGE:'%5.2lf%s\\n'";
}
$i++; $iter++; $i++; $iter++;
} }
$rrd_options .= " HRULE:0#999999";
?> ?>