mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
Update nfs-stats.inc.php to use data_update
filter tags in ports.inc.php, and update the phpdoc for rrd_array_filter()
This commit is contained in:
@@ -22,8 +22,11 @@ require_once $config['install_dir'] . "/includes/rrdtool.inc.php";
|
||||
require_once $config['install_dir'] . "/includes/influxdb.inc.php";
|
||||
|
||||
|
||||
/*
|
||||
* @return Copy of $arr with all keys beginning with 'rrd_' removed.
|
||||
/**
|
||||
* Filter all elements with keys that start with 'rrd_'
|
||||
*
|
||||
* @param array $arr input array
|
||||
* @return array Copy of $arr with all keys beginning with 'rrd_' removed.
|
||||
*/
|
||||
function rrd_array_filter($arr)
|
||||
{
|
||||
|
@@ -1,55 +1,49 @@
|
||||
<?php
|
||||
$rrd_filename = $config['rrd_dir'].'/'.$device['hostname'].'/app-nfsstats-'.$app['app_id'].'.rrd';
|
||||
$options = '-O qv';
|
||||
$mib = 'NET-SNMP-EXTEND-MIB';
|
||||
|
||||
$oid = '.1.3.6.1.4.1.8072.1.3.2.4';
|
||||
echo ' nfsstat';
|
||||
$nfsstats = snmp_walk($device, $oid, '-Oqv', 'NET-SNMP-EXTEND-MIB');
|
||||
|
||||
$nfsstats = snmp_walk($device, $oid, $options, $mib);
|
||||
list($total,$null,$getattr,$setattr,$lookup,$access,$read,$write,$create,$mkdir,$remove,$rmdir,$rename,$readdirplus,$fsstat) = explode("\n",$nfsstats);
|
||||
$name = 'nfsstat';
|
||||
$app_id = $app['app_id'];
|
||||
echo ' ' . $name;
|
||||
|
||||
if(!is_file($rrd_filename))
|
||||
{
|
||||
rrdtool_create(
|
||||
$rrd_filename,
|
||||
'--step 300
|
||||
DS:total:GAUGE:600:0:U
|
||||
DS:null:GAUGE:600:0:U
|
||||
DS:getattr:GAUGE:600:0:U
|
||||
DS:setattr:GAUGE:600:0:U
|
||||
DS:lookup:GAUGE:600:0:U
|
||||
DS:access:GAUGE:600:0:U
|
||||
DS:read:GAUGE:600:0:U
|
||||
DS:write:GAUGE:600:0:U
|
||||
DS:create:GAUGE:600:0:U
|
||||
DS:mkdir:GAUGE:600:0:U
|
||||
DS:remove:GAUGE:600:0:U
|
||||
DS:rmdir:GAUGE:600:0:U
|
||||
DS:rename:GAUGE:600:0:U
|
||||
DS:readdirplus:GAUGE:600:0:U
|
||||
DS:fsstat:GAUGE:600:0:U
|
||||
'.$config['rrd_rra']
|
||||
);
|
||||
}
|
||||
|
||||
$fields = array(
|
||||
'total' => $total,
|
||||
'null' => $null,
|
||||
'getattr' => $getattr,
|
||||
'setattr' => $setattr,
|
||||
'lookup' => $lookup,
|
||||
'access' => $access,
|
||||
'read' => $read,
|
||||
'write' => $write,
|
||||
'create' => $create,
|
||||
'mkdir' => $mkdir,
|
||||
'remove' => $remove,
|
||||
'rmdir' => $rmdir,
|
||||
'rename' => $rename,
|
||||
'readdirplus' => $readdirplus,
|
||||
'fsstat' => $fsstat,
|
||||
$rrd_name = array('app', $name, $app_id);
|
||||
$rrd_def = array(
|
||||
'DS:total:GAUGE:600:0:U',
|
||||
'DS:null:GAUGE:600:0:U',
|
||||
'DS:getattr:GAUGE:600:0:U',
|
||||
'DS:setattr:GAUGE:600:0:U',
|
||||
'DS:lookup:GAUGE:600:0:U',
|
||||
'DS:access:GAUGE:600:0:U',
|
||||
'DS:read:GAUGE:600:0:U',
|
||||
'DS:write:GAUGE:600:0:U',
|
||||
'DS:create:GAUGE:600:0:U',
|
||||
'DS:mkdir:GAUGE:600:0:U',
|
||||
'DS:remove:GAUGE:600:0:U',
|
||||
'DS:rmdir:GAUGE:600:0:U',
|
||||
'DS:rename:GAUGE:600:0:U',
|
||||
'DS:readdirplus:GAUGE:600:0:U',
|
||||
'DS:fsstat:GAUGE:600:0:U',
|
||||
);
|
||||
|
||||
rrdtool_update($rrd_filename, $fields);
|
||||
$tags = array('name' => 'nfsstats', 'app_id' => $app['app_id']);
|
||||
influx_update($device,'app',$tags,$fields);
|
||||
$data = explode("\n", $nfsstats);
|
||||
$fields = array(
|
||||
'total' => $data[0],
|
||||
'null' => $data[1],
|
||||
'getattr' => $data[2],
|
||||
'setattr' => $data[3],
|
||||
'lookup' => $data[4],
|
||||
'access' => $data[5],
|
||||
'read' => $data[6],
|
||||
'write' => $data[7],
|
||||
'create' => $data[8],
|
||||
'mkdir' => $data[9],
|
||||
'remove' => $data[10],
|
||||
'rmdir' => $data[11],
|
||||
'rename' => $data[12],
|
||||
'readdirplus' => $data[13],
|
||||
'fsstat' => $data[14],
|
||||
);
|
||||
|
||||
$tags = compact('name', 'app_id', 'rrd_name', 'rrd_def');
|
||||
data_update($device, 'app', $tags, $fields);
|
||||
|
@@ -646,7 +646,7 @@ foreach ($ports as $port) {
|
||||
$fields['ifInOctets_rate'] = $port['ifInOctets_rate'];
|
||||
$fields['ifOutOctets_rate'] = $port['ifOutOctets_rate'];
|
||||
|
||||
influx_update($device,'ports',$tags,$fields);
|
||||
influx_update($device, 'ports', rrd_array_filter($tags), $fields);
|
||||
|
||||
// End Update IF-MIB
|
||||
// Update PAgP
|
||||
|
Reference in New Issue
Block a user