Addes support for infoblox devices

This commit is contained in:
wiad
2016-01-18 13:51:39 +01:00
parent e380cc5100
commit 65176c00bd
7 changed files with 439 additions and 56 deletions

View File

@@ -0,0 +1,57 @@
<?php
require 'includes/graphs/common.inc.php';
$rrd_filename = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('ib_dhcp_messages.rrd');
$rrd_options .= " --vertical-label='Messages per minute'";
$stats = array(
'request' => '#FFAB00FF',
'ack' => '#007283FF',
'discover' => '#74C366FF',
'offer' => '#B1441EFF',
'inform' => '#8D85F3FF',
'nack' => '#FAFD9EFF',
'release' => '#96E78AFF',
'decline' => '#FF0000FF',
'other' => '#8F9286FF',
);
$i = 0;
foreach ($stats as $stat => $color) {
$i++;
$rrd_list[$i]['filename'] = $rrd_filename;
$rrd_list[$i]['descr'] = ucfirst ($stat);
$rrd_list[$i]['ds'] = $stat;
# Set up DEFs
$rrd_options .= " DEF:".$stat."=".$rrd_filename.':'.$stat.':AVERAGE ';
# Set up CDEFS to multiply with 60 to get per minute value
$rrd_options .= " 'CDEF:cdef".$stat."=".$stat.",60,*'";
# Set up area graphing with stacking
if ( $i == "0" ) {
$rrd_options .= " 'AREA:cdef".$stat . $color.":".ucfirst($stat)."'";
} else {
$rrd_options .= " 'AREA:cdef".$stat . $color.":".ucfirst($stat).":STACK'";
}
# Set up legend, with consistent indent
$filler = 8 - strlen($stat);
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:cdef".$stat.":LAST:".$current_pad."Current\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdef".$stat.":AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdef".$stat.":MAX:Maximum\:%8.0lf\\n'";
}
// Set up Total value
$rrd_options .= " 'CDEF:cdeftotal=cdefrequest,cdefack,cdefdiscover,cdefoffer,
cdefinform,cdefnack,cdefrelease,cdefdecline,cdefother,+,+,+,+,+,+,+,+'";
$rrd_options .= " 'LINE1:cdeftotal#000000FF:Total'";
$filler = 8 - strlen("Total");
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:cdeftotal:LAST:".$current_pad."Current\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:MAX:Maximum\:%8.0lf\\n'";

View File

@@ -0,0 +1,50 @@
<?php
require 'includes/graphs/common.inc.php';
$rrd_filename = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('ib_dns_dyn_updates.rrd');
$rrd_options .= " --vertical-label='Updates per minute'";
$rrd_options .= " --lower-limit='0'";
$stats = array(
'success' => '#74C366FF',
'failure' => '#007283FF',
'reject' => '#FFAB00FF',
'prereq_reject' => '#B1441EFF',
);
$i = 0;
foreach ($stats as $stat => $color) {
$i++;
$rrd_list[$i]['filename'] = $rrd_filename;
$rrd_list[$i]['descr'] = ucfirst ($stat);
$rrd_list[$i]['ds'] = $stat;
# Set up DEFs
$rrd_options .= " DEF:".$stat."=".$rrd_filename.':'.$stat.':AVERAGE ';
# Set up CDEFS to multiply with 60 to get per minute value
$rrd_options .= " 'CDEF:cdef".$stat."=".$stat.",60,*'";
# Set up area graphing with stacking
if ( $i == "0" ) {
$rrd_options .= " 'AREA:cdef".$stat . $color.":".$stat."'";
} else {
$rrd_options .= " 'AREA:cdef".$stat . $color.":".$stat.":STACK'";
}
# Set up legend, with consistent indent
$filler = 15 - strlen($stat);
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:cdef".$stat.":LAST: ".$current_pad."Current\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdef".$stat.":AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdef".$stat.":MAX:Maximum\:%8.0lf\\n'";
}
# Add total value
$rrd_options .= " 'CDEF:cdeftotal=cdefsuccess,cdeffailure,cdefreject,cdefprereq_reject,+,+,+'";
$rrd_options .= " 'LINE1:cdeftotal#000000FF:Total'";
$filler = 16 - strlen("Total");
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:cdeftotal:LAST:".$current_pad."Current\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:MAX:Maximum\:%8.0lf\\n'";

View File

@@ -0,0 +1,48 @@
<?php
require 'includes/graphs/common.inc.php';
$rrd_filename = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('ib_dns_performance.rrd');
$rrd_options .= " --vertical-label='Answer time in milliseconds'";
$rrd_options .= " --lower-limit='0'";
$stats = array(
'PerfAA' => '#74C366FF',
'PerfnonAA' => '#007283FF',
);
$i = 0;
foreach ($stats as $stat => $color) {
$i++;
$rrd_list[$i]['filename'] = $rrd_filename;
$rrd_list[$i]['descr'] = ucfirst ($stat);
$rrd_list[$i]['ds'] = $stat;
# Set up DEFs
$rrd_options .= " DEF:".$stat."=".$rrd_filename.':'.$stat.':AVERAGE ';
# Set up area graphing with stacking
if ( $i == "0" ) {
$rrd_options .= " 'AREA:".$stat . $color.":".$stat."'";
} else {
$rrd_options .= " 'AREA:".$stat . $color.":".$stat.":STACK'";
}
# Set up legend, with consistent indent
$filler = 15 - strlen($stat);
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:".$stat.":LAST: ".$current_pad."Current\:%8.0lf'";
$rrd_options .= " 'GPRINT:".$stat.":AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:".$stat.":MAX:Maximum\:%8.0lf\\n'";
}
# Add total value
$rrd_options .= " 'CDEF:cdeftotal=PerfAA,PerfnonAA,+'";
$rrd_options .= " 'LINE1:cdeftotal#000000FF:Total'";
$filler = 16 - strlen("Total");
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:cdeftotal:LAST:".$current_pad."Current\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:MAX:Maximum\:%8.0lf\\n'";

View File

@@ -0,0 +1,52 @@
<?php
require 'includes/graphs/common.inc.php';
$rrd_filename = $config['rrd_dir'].'/'.$device['hostname'].'/'.safename('ib_dns_request_return_codes.rrd');
$rrd_options .= " --vertical-label='Requests per second'";
$rrd_options .= " --lower-limit='0'";
$stats = array(
'success' => '#74C366FF',
'failure' => '#007283FF',
'nxdomain' => '#FFAB00FF',
'nxrrset' => '#B1441EFF',
);
$i = 0;
foreach ($stats as $stat => $color) {
$i++;
$rrd_list[$i]['filename'] = $rrd_filename;
$rrd_list[$i]['descr'] = ucfirst ($stat);
$rrd_list[$i]['ds'] = $stat;
# Set up DEFs
$rrd_options .= " DEF:".$stat."=".$rrd_filename.':'.$stat.':AVERAGE ';
# Set up CDEFS to multiply with 1 to get per second value
$rrd_options .= " 'CDEF:cdef".$stat."=".$stat.",1,*'";
# Set up area graphing with stacking
if ( $i == "0" ) {
$rrd_options .= " 'AREA:cdef".$stat . $color.":".ucfirst($stat)."'";
} else {
$rrd_options .= " 'AREA:cdef".$stat . $color.":".ucfirst($stat).":STACK'";
}
# Set up legend, with consistent indent
$filler = 15 - strlen($stat);
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:cdef".$stat.":LAST: ".$current_pad."Current\:%8.0lf%s'";
$rrd_options .= " 'GPRINT:cdef".$stat.":AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdef".$stat.":MAX:Maximum\:%8.0lf\\n'";
$statstring .= "cdef".$stat.",";
}
# Add total value
$rrd_options .= " 'CDEF:cdeftotal=".$statstring."+,+,+'";
$rrd_options .= " 'LINE1:cdeftotal#000000FF:Total'";
$filler = 16 - strlen("Total");
$current_pad = str_pad("", $filler, ' ', STR_PAD_LEFT);
$rrd_options .= " 'GPRINT:cdeftotal:LAST:".$current_pad."Current\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:AVERAGE:Average\:%8.0lf'";
$rrd_options .= " 'GPRINT:cdeftotal:MAX:Maximum\:%8.0lf\\n'";