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";
|
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)
|
function rrd_array_filter($arr)
|
||||||
{
|
{
|
||||||
|
@@ -1,55 +1,49 @@
|
|||||||
<?php
|
<?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';
|
$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);
|
$name = 'nfsstat';
|
||||||
list($total,$null,$getattr,$setattr,$lookup,$access,$read,$write,$create,$mkdir,$remove,$rmdir,$rename,$readdirplus,$fsstat) = explode("\n",$nfsstats);
|
$app_id = $app['app_id'];
|
||||||
|
echo ' ' . $name;
|
||||||
|
|
||||||
if(!is_file($rrd_filename))
|
$rrd_name = array('app', $name, $app_id);
|
||||||
{
|
$rrd_def = array(
|
||||||
rrdtool_create(
|
'DS:total:GAUGE:600:0:U',
|
||||||
$rrd_filename,
|
'DS:null:GAUGE:600:0:U',
|
||||||
'--step 300
|
'DS:getattr:GAUGE:600:0:U',
|
||||||
DS:total:GAUGE:600:0:U
|
'DS:setattr:GAUGE:600:0:U',
|
||||||
DS:null:GAUGE:600:0:U
|
'DS:lookup:GAUGE:600:0:U',
|
||||||
DS:getattr:GAUGE:600:0:U
|
'DS:access:GAUGE:600:0:U',
|
||||||
DS:setattr:GAUGE:600:0:U
|
'DS:read:GAUGE:600:0:U',
|
||||||
DS:lookup:GAUGE:600:0:U
|
'DS:write:GAUGE:600:0:U',
|
||||||
DS:access:GAUGE:600:0:U
|
'DS:create:GAUGE:600:0:U',
|
||||||
DS:read:GAUGE:600:0:U
|
'DS:mkdir:GAUGE:600:0:U',
|
||||||
DS:write:GAUGE:600:0:U
|
'DS:remove:GAUGE:600:0:U',
|
||||||
DS:create:GAUGE:600:0:U
|
'DS:rmdir:GAUGE:600:0:U',
|
||||||
DS:mkdir:GAUGE:600:0:U
|
'DS:rename:GAUGE:600:0:U',
|
||||||
DS:remove:GAUGE:600:0:U
|
'DS:readdirplus:GAUGE:600:0:U',
|
||||||
DS:rmdir:GAUGE:600:0:U
|
'DS:fsstat: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,
|
|
||||||
);
|
);
|
||||||
|
|
||||||
rrdtool_update($rrd_filename, $fields);
|
$data = explode("\n", $nfsstats);
|
||||||
$tags = array('name' => 'nfsstats', 'app_id' => $app['app_id']);
|
$fields = array(
|
||||||
influx_update($device,'app',$tags,$fields);
|
'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['ifInOctets_rate'] = $port['ifInOctets_rate'];
|
||||||
$fields['ifOutOctets_rate'] = $port['ifOutOctets_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
|
// End Update IF-MIB
|
||||||
// Update PAgP
|
// Update PAgP
|
||||||
|
Reference in New Issue
Block a user