mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
feature: Add FreeBSD NFS Client/Server application support (#6008)
This commit is contained in:
@@ -29,6 +29,8 @@ Different applications support a variety of ways collect data: by direct connect
|
||||
1. [Munin](#munin) - Agent
|
||||
1. [PHP-FPM](#php-fpm) - SNMP extend
|
||||
1. [Fail2ban](#fail2ban) - SNMP extend
|
||||
1. [FreeBSD NFS Server](#freebsd-nfs-server) - SNMP extend
|
||||
1. [FreeBSD NFS Client](#freebsd-nfs-client) - SNMP extend
|
||||
1. [Postgres](#postgres) - SNMP extend
|
||||
1. [Postfix](#postfix) - SNMP extend
|
||||
|
||||
@@ -544,6 +546,40 @@ extend postgres /etc/snmp/postgres
|
||||
|
||||
8: On the device page in Librenms, edit your host and check `Postgres` under the Applications tab.
|
||||
|
||||
#### FreeBSD NFS Client
|
||||
|
||||
##### SNMP Extend
|
||||
|
||||
1: Copy the shell script, fbsdnfsserver, to the desired host (the host must be added to LibreNMS devices) (wget https://github.com/librenms/librenms-agent/raw/master/snmp/fbsdnfsclient -O /etc/snmp/fbsdnfsclient)
|
||||
|
||||
2: Make the script executable (chmod +x /etc/snmp/fbsdnfsclient)
|
||||
|
||||
3: Edit your snmpd.conf file and add:
|
||||
```
|
||||
extend fbsdnfsclient /etc/snmp/fbsdnfsclient
|
||||
```
|
||||
|
||||
4: Restart snmpd on your host
|
||||
|
||||
5: On the device page in Librenms, edit your host and check `FreeBSD NFS Client` under the Applications tab.
|
||||
|
||||
#### FreeBSD NFS Server
|
||||
|
||||
##### SNMP Extend
|
||||
|
||||
1: Copy the shell script, fbsdnfsserver, to the desired host (the host must be added to LibreNMS devices) (wget https://github.com/librenms/librenms-agent/raw/master/snmp/fbsdnfsserver -O /etc/snmp/fbsdnfsserver)
|
||||
|
||||
2: Make the script executable (chmod +x /etc/snmp/fbsdnfsserver)
|
||||
|
||||
3: Edit your snmpd.conf file and add:
|
||||
```
|
||||
extend fbsdnfsserver /etc/snmp/fbsdnfsserver
|
||||
```
|
||||
|
||||
4: Restart snmpd on your host
|
||||
|
||||
5: On the device page in Librenms, edit your host and check `FreeBSD NFS Server` under the Applications tab.
|
||||
|
||||
#### Postfix
|
||||
|
||||
##### SNMP Extend
|
||||
|
@@ -103,6 +103,12 @@ function nicecase($item)
|
||||
case 'exim-stats':
|
||||
return 'EXIM Stats';
|
||||
|
||||
case 'fbsd-nfs-client':
|
||||
return 'FreeBSD NFS Client';
|
||||
|
||||
case 'fbsd-nfs-server':
|
||||
return 'FreeBSD NFS Server';
|
||||
|
||||
case 'php-fpm':
|
||||
return 'PHP-FPM';
|
||||
|
||||
|
120
html/includes/graphs/application/fbsd-nfs-client_cache.inc.php
Normal file
120
html/includes/graphs/application/fbsd-nfs-client_cache.inc.php
Normal file
@@ -0,0 +1,120 @@
|
||||
<?php
|
||||
$name = 'fbsd-nfs-client';
|
||||
$app_id = $app['app_id'];
|
||||
$scale_min = 0;
|
||||
$colours = 'mixed';
|
||||
$unit_text = 'per second';
|
||||
$unitlen = 10;
|
||||
$bigdescrlen = 12;
|
||||
$smalldescrlen = 12;
|
||||
$dostack = 0;
|
||||
$printtotal = 0;
|
||||
$addarea = 1;
|
||||
$transparency = 15;
|
||||
|
||||
$rrd_filename = rrd_name($device['hostname'], array('app', $name, $app_id));
|
||||
|
||||
if (is_file($rrd_filename)) {
|
||||
$rrd_list = array(
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'attr hits',
|
||||
'ds' => 'attrhits',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'attr misses',
|
||||
'ds' => 'attrmisses',
|
||||
'colour' => '28774f'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'lkup hits',
|
||||
'ds' => 'lkuphits',
|
||||
'colour' => 'aa6c39'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'lkup misses',
|
||||
'ds' => 'lkupmisses',
|
||||
'colour' => '88cc88'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'bioR hits',
|
||||
'ds' => 'biorhits',
|
||||
'colour' => 'd46a6a'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'bioR misses',
|
||||
'ds' => 'biormisses',
|
||||
'colour' => 'ffd1aa'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'bioW hits',
|
||||
'ds' => 'biowhits',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'bioW misses',
|
||||
'ds' => 'biowmisses',
|
||||
'colour' => 'aa8839'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'biorRL hits',
|
||||
'ds' => 'biorlhits',
|
||||
'colour' => '28536c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'bioRL misses',
|
||||
'ds' => 'biorlmisses',
|
||||
'colour' => '880000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'bioD hits',
|
||||
'ds' => 'biodhits',
|
||||
'colour' => 'ff0000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'bioD misses',
|
||||
'ds' => 'biodmisses',
|
||||
'colour' => '285300'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'dirE hits',
|
||||
'ds' => 'direhits',
|
||||
'colour' => '2800ff'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'dirE misses',
|
||||
'ds' => 'diremisses',
|
||||
'colour' => '000080'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'accs hits',
|
||||
'ds' => 'accshits',
|
||||
'colour' => '500000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'accs misses',
|
||||
'ds' => 'accsmisses',
|
||||
'colour' => 'aa6511'
|
||||
)
|
||||
);
|
||||
} else {
|
||||
echo "file missing: $rrd_filename";
|
||||
}
|
||||
|
||||
require 'includes/graphs/generic_v3_multiline.inc.php';
|
54
html/includes/graphs/application/fbsd-nfs-client_rpc.inc.php
Normal file
54
html/includes/graphs/application/fbsd-nfs-client_rpc.inc.php
Normal file
@@ -0,0 +1,54 @@
|
||||
<?php
|
||||
$name = 'fbsd-nfs-client';
|
||||
$app_id = $app['app_id'];
|
||||
$scale_min = 0;
|
||||
$colours = 'mixed';
|
||||
$unit_text = 'per second';
|
||||
$unitlen = 10;
|
||||
$bigdescrlen = 10;
|
||||
$smalldescrlen = 10;
|
||||
$dostack = 0;
|
||||
$printtotal = 0;
|
||||
$addarea = 1;
|
||||
$transparency = 15;
|
||||
|
||||
$rrd_filename = rrd_name($device['hostname'], array('app', $name, $app_id));
|
||||
|
||||
if (is_file($rrd_filename)) {
|
||||
$rrd_list = array(
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'timed out',
|
||||
'ds' => 'timedout',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'invalid',
|
||||
'ds' => 'invalid',
|
||||
'colour' => 'ffd1aa'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'x replies',
|
||||
'ds' => 'xreplies',
|
||||
'colour' => 'aa6c39'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'retries',
|
||||
'ds' => 'retries',
|
||||
'colour' => '28536c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'requests',
|
||||
'ds' => 'requests',
|
||||
'colour' => 'ff11bb'
|
||||
)
|
||||
);
|
||||
} else {
|
||||
echo "file missing: $rrd_filename";
|
||||
}
|
||||
|
||||
require 'includes/graphs/generic_v3_multiline.inc.php';
|
150
html/includes/graphs/application/fbsd-nfs-client_stats.inc.php
Normal file
150
html/includes/graphs/application/fbsd-nfs-client_stats.inc.php
Normal file
@@ -0,0 +1,150 @@
|
||||
<?php
|
||||
$name = 'fbsd-nfs-client';
|
||||
$app_id = $app['app_id'];
|
||||
$scale_min = 0;
|
||||
$colours = 'mixed';
|
||||
$unit_text = 'per second';
|
||||
$unitlen = 10;
|
||||
$bigdescrlen = 10;
|
||||
$smalldescrlen = 10;
|
||||
$dostack = 0;
|
||||
$printtotal = 0;
|
||||
$addarea = 1;
|
||||
$transparency = 15;
|
||||
|
||||
$rrd_filename = rrd_name($device['hostname'], array('app', $name, $app_id));
|
||||
|
||||
if (is_file($rrd_filename)) {
|
||||
$rrd_list = array(
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'getattr',
|
||||
'ds' => 'getattr',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'setattr',
|
||||
'ds' => 'setattr',
|
||||
'colour' => '28774f'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'lookup',
|
||||
'ds' => 'lookup',
|
||||
'colour' => 'aa6c39'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'readlink',
|
||||
'ds' => 'readlink',
|
||||
'colour' => '88cc88'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'read',
|
||||
'ds' => 'read',
|
||||
'colour' => 'd46a6a'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'write',
|
||||
'ds' => 'write',
|
||||
'colour' => 'ffd1aa'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'create',
|
||||
'ds' => 'create',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'remove',
|
||||
'ds' => 'remove',
|
||||
'colour' => 'aa8839'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'rename',
|
||||
'ds' => 'rename',
|
||||
'colour' => '28536c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'link',
|
||||
'ds' => 'link',
|
||||
'colour' => '880000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'symlink',
|
||||
'ds' => 'symlink',
|
||||
'colour' => 'ff0000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'mkdir',
|
||||
'ds' => 'mkdir',
|
||||
'colour' => '285300'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'rmdir',
|
||||
'ds' => 'rmdir',
|
||||
'colour' => '2800ff'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'readdir',
|
||||
'ds' => 'readdir',
|
||||
'colour' => '000080'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'rdirplus',
|
||||
'ds' => 'rdirplus',
|
||||
'colour' => '500000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'access',
|
||||
'ds' => 'access',
|
||||
'colour' => 'aa6511'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'mknod',
|
||||
'ds' => 'mknod',
|
||||
'colour' => '98139c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'fsstat',
|
||||
'ds' => 'fsstat',
|
||||
'colour' => 'd853dc'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'fsinfo',
|
||||
'ds' => 'fsinfo',
|
||||
'colour' => 'd853dc'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'pathconf',
|
||||
'ds' => 'pathconf',
|
||||
'colour' => 'f8f36c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'commit',
|
||||
'ds' => 'commit',
|
||||
'colour' => 'ff536c'
|
||||
)
|
||||
);
|
||||
} else {
|
||||
echo "file missing: $rrd_filename";
|
||||
}
|
||||
|
||||
require 'includes/graphs/generic_v3_multiline.inc.php';
|
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
$name = 'fbsd-nfs-server';
|
||||
$app_id = $app['app_id'];
|
||||
$scale_min = 0;
|
||||
$colours = 'mixed';
|
||||
$unit_text = 'per second';
|
||||
$unitlen = 10;
|
||||
$bigdescrlen = 10;
|
||||
$smalldescrlen = 10;
|
||||
$dostack = 0;
|
||||
$printtotal = 0;
|
||||
$addarea = 1;
|
||||
$transparency = 15;
|
||||
|
||||
$rrd_filename = rrd_name($device['hostname'], array('app', $name, $app_id));
|
||||
|
||||
if (is_file($rrd_filename)) {
|
||||
$rrd_list = array(
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'inprog',
|
||||
'ds' => 'inprog',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'idem',
|
||||
'ds' => 'idem',
|
||||
'colour' => 'ffd1aa'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'nonidem',
|
||||
'ds' => 'nonidem',
|
||||
'colour' => 'aa6c39'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'misses',
|
||||
'ds' => 'misses',
|
||||
'colour' => '28536c'
|
||||
)
|
||||
);
|
||||
} else {
|
||||
echo "file missing: $rrd_filename";
|
||||
}
|
||||
|
||||
require 'includes/graphs/generic_v3_multiline.inc.php';
|
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
$name = 'fbsd-nfs-server';
|
||||
$app_id = $app['app_id'];
|
||||
$scale_min = 0;
|
||||
$colours = 'mixed';
|
||||
$unit_text = 'per second';
|
||||
$unitlen = 10;
|
||||
$bigdescrlen = 10;
|
||||
$smalldescrlen = 10;
|
||||
$dostack = 0;
|
||||
$printtotal = 0;
|
||||
$addarea = 1;
|
||||
$transparency = 15;
|
||||
|
||||
$rrd_filename = rrd_name($device['hostname'], array('app', $name, $app_id));
|
||||
|
||||
if (is_file($rrd_filename)) {
|
||||
$rrd_list = array(
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'write ops',
|
||||
'ds' => 'writeops',
|
||||
'colour' => 'aa6c39'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'write rpc',
|
||||
'ds' => 'writerpc',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'ops saved',
|
||||
'ds' => 'opsaved',
|
||||
'colour' => '28536c'
|
||||
)
|
||||
);
|
||||
} else {
|
||||
echo "file missing: $rrd_filename";
|
||||
}
|
||||
|
||||
require 'includes/graphs/generic_v3_multiline.inc.php';
|
150
html/includes/graphs/application/fbsd-nfs-server_stats.inc.php
Normal file
150
html/includes/graphs/application/fbsd-nfs-server_stats.inc.php
Normal file
@@ -0,0 +1,150 @@
|
||||
<?php
|
||||
$name = 'fbsd-nfs-server';
|
||||
$app_id = $app['app_id'];
|
||||
$scale_min = 0;
|
||||
$colours = 'mixed';
|
||||
$unit_text = 'per second';
|
||||
$unitlen = 10;
|
||||
$bigdescrlen = 10;
|
||||
$smalldescrlen = 10;
|
||||
$dostack = 0;
|
||||
$printtotal = 0;
|
||||
$addarea = 1;
|
||||
$transparency = 15;
|
||||
|
||||
$rrd_filename = rrd_name($device['hostname'], array('app', $name, $app_id));
|
||||
|
||||
if (is_file($rrd_filename)) {
|
||||
$rrd_list = array(
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'getattr',
|
||||
'ds' => 'getattr',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'setattr',
|
||||
'ds' => 'setattr',
|
||||
'colour' => '28774f'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'lookup',
|
||||
'ds' => 'lookup',
|
||||
'colour' => 'aa6c39'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'readlink',
|
||||
'ds' => 'readlink',
|
||||
'colour' => '88cc88'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'read',
|
||||
'ds' => 'read',
|
||||
'colour' => 'd46a6a'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'write',
|
||||
'ds' => 'write',
|
||||
'colour' => 'ffd1aa'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'create',
|
||||
'ds' => 'create',
|
||||
'colour' => '582a72'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'remove',
|
||||
'ds' => 'remove',
|
||||
'colour' => 'aa8839'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'rename',
|
||||
'ds' => 'rename',
|
||||
'colour' => '28536c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'link',
|
||||
'ds' => 'link',
|
||||
'colour' => '880000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'symlink',
|
||||
'ds' => 'symlink',
|
||||
'colour' => 'ff0000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'mkdir',
|
||||
'ds' => 'mkdir',
|
||||
'colour' => '285300'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'rmdir',
|
||||
'ds' => 'rmdir',
|
||||
'colour' => '2800ff'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'readdir',
|
||||
'ds' => 'readdir',
|
||||
'colour' => '000080'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'rdirplus',
|
||||
'ds' => 'rdirplus',
|
||||
'colour' => '500000'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'access',
|
||||
'ds' => 'access',
|
||||
'colour' => 'aa6511'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'mknod',
|
||||
'ds' => 'mknod',
|
||||
'colour' => '98139c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'fsstat',
|
||||
'ds' => 'fsstat',
|
||||
'colour' => 'd853dc'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'fsinfo',
|
||||
'ds' => 'fsinfo',
|
||||
'colour' => 'd853dc'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'pathconf',
|
||||
'ds' => 'pathconf',
|
||||
'colour' => 'f8f36c'
|
||||
),
|
||||
array(
|
||||
'filename' => $rrd_filename,
|
||||
'descr' => 'commit',
|
||||
'ds' => 'commit',
|
||||
'colour' => 'ff536c'
|
||||
)
|
||||
);
|
||||
} else {
|
||||
echo "file missing: $rrd_filename";
|
||||
}
|
||||
|
||||
require 'includes/graphs/generic_v3_multiline.inc.php';
|
@@ -158,6 +158,18 @@ $graphs['php-fpm'] = array(
|
||||
'stats'
|
||||
);
|
||||
|
||||
$graphs['fbsd-nfs-server'] = array(
|
||||
'stats',
|
||||
'cache',
|
||||
'gathering',
|
||||
);
|
||||
|
||||
$graphs['fbsd-nfs-client'] = array(
|
||||
'stats',
|
||||
'cache',
|
||||
'rpc',
|
||||
);
|
||||
|
||||
print_optionbar_start();
|
||||
|
||||
echo "<span style='font-weight: bold;'>Apps</span> » ";
|
||||
|
108
includes/polling/applications/fbsd-nfs-client.inc.php
Normal file
108
includes/polling/applications/fbsd-nfs-client.inc.php
Normal file
@@ -0,0 +1,108 @@
|
||||
<?php
|
||||
$name = 'fbsd-nfs-client';
|
||||
$app_id = $app['app_id'];
|
||||
|
||||
use LibreNMS\RRD\RrdDefinition;
|
||||
|
||||
$options = '-o qv';
|
||||
$mib = 'NET-SNMP-EXTEND-MIB';
|
||||
$oid = 'nsExtendOutLine.13.102.98.115.100.110.102.115.99.108.105.101.110.116';
|
||||
$nfsclient = snmp_walk($device, $oid, $options, $mib);
|
||||
|
||||
list($getattr, $setattr, $lookup, $readlink, $read, $write, $create, $remove, $rename, $link, $symlink, $mkdir, $rmdir,
|
||||
$readdir, $rdirplus, $access, $mknod, $fsstat, $fsinfo, $pathconf, $commit, $timedout, $invalid, $xreplies, $retries,
|
||||
$requests, $attrhits, $attrmisses, $lkuphits, $lkupmisses, $biorhits, $biormisses, $biowhits, $biowmisses, $biorlhits,
|
||||
$biorlmisses, $biodhits, $biodmisses, $direhits, $diremisses, $accshits, $accsmisses) = explode("\n", $nfsclient);
|
||||
|
||||
$rrd_name = array('app', $name, $app_id);
|
||||
$rrd_def = RrdDefinition::make()
|
||||
->addDataset('getattr', 'derive', 0)
|
||||
->addDataset('setattr', 'derive', 0)
|
||||
->addDataset('lookup', 'derive', 0)
|
||||
->addDataset('readlink', 'derive', 0)
|
||||
->addDataset('read', 'derive', 0)
|
||||
->addDataset('write', 'derive', 0)
|
||||
->addDataset('create', 'derive', 0)
|
||||
->addDataset('remove', 'derive', 0)
|
||||
->addDataset('rename', 'derive', 0)
|
||||
->addDataset('link', 'derive', 0)
|
||||
->addDataset('symlink', 'derive', 0)
|
||||
->addDataset('mkdir', 'derive', 0)
|
||||
->addDataset('rmdir', 'derive', 0)
|
||||
->addDataset('readdir', 'derive', 0)
|
||||
->addDataset('rdirplus', 'derive', 0)
|
||||
->addDataset('access', 'derive', 0)
|
||||
->addDataset('mknod', 'derive', 0)
|
||||
->addDataset('fsstat', 'derive', 0)
|
||||
->addDataset('fsinfo', 'derive', 0)
|
||||
->addDataset('pathconf', 'derive', 0)
|
||||
->addDataset('commit', 'derive', 0)
|
||||
->addDataset('timedout', 'derive', 0)
|
||||
->addDataset('invalid', 'derive', 0)
|
||||
->addDataset('xreplies', 'derive', 0)
|
||||
->addDataset('retries', 'derive', 0)
|
||||
->addDataset('requests', 'derive', 0)
|
||||
->addDataset('attrhits', 'derive', 0)
|
||||
->addDataset('attrmisses', 'derive', 0)
|
||||
->addDataset('lkuphits', 'derive', 0)
|
||||
->addDataset('lkupmisses', 'derive', 0)
|
||||
->addDataset('biorhits', 'derive', 0)
|
||||
->addDataset('biormisses', 'derive', 0)
|
||||
->addDataset('biowhits', 'derive', 0)
|
||||
->addDataset('biowmisses', 'derive', 0)
|
||||
->addDataset('biorlhits', 'derive', 0)
|
||||
->addDataset('biorlmisses', 'derive', 0)
|
||||
->addDataset('biodhits', 'derive', 0)
|
||||
->addDataset('biodmisses', 'derive', 0)
|
||||
->addDataset('direhits', 'derive', 0)
|
||||
->addDataset('diremisses', 'derive', 0)
|
||||
->addDataset('accshits', 'derive', 0)
|
||||
->addDataset('accsmisses', 'derive', 0);
|
||||
|
||||
$fields = array(
|
||||
'getattr' => $getattr,
|
||||
'setattr' => $setattr,
|
||||
'lookup' => $lookup,
|
||||
'readlink' => $readlink,
|
||||
'read' => $read,
|
||||
'write' => $write,
|
||||
'create' => $create,
|
||||
'remove' => $remove,
|
||||
'rename' => $rename,
|
||||
'link' => $link,
|
||||
'symlink' => $symlink,
|
||||
'mkdir' => $mkdir,
|
||||
'rmdir' => $rmdir,
|
||||
'readdir' => $readdir,
|
||||
'rdirplus' => $rdirplus,
|
||||
'access' => $access,
|
||||
'mknod' => $mknod,
|
||||
'fsstat' => $fsstat,
|
||||
'fsinfo' => $fsinfo,
|
||||
'pathconf' => $pathconf,
|
||||
'commit' => $commit,
|
||||
'timedout' => $timedout,
|
||||
'invalid' => $invalid,
|
||||
'xreplies' => $xreplies,
|
||||
'retries' => $retries,
|
||||
'requests' => $requests,
|
||||
'attrhits' => $attrhits,
|
||||
'attrmisses' => $attrmisses,
|
||||
'lkuphits' => $lkuphits,
|
||||
'lkupmisses' => $lkupmisses,
|
||||
'biorhits' => $biorhits,
|
||||
'biormisses' => $biormisses,
|
||||
'biowhits' => $biowhits,
|
||||
'biowmisses' => $biowmisses,
|
||||
'biorlhits' => $biorlhits,
|
||||
'biorlmisses' => $biorlmisses,
|
||||
'biodhits' => $biodhits,
|
||||
'biodmisses' => $biodmisses,
|
||||
'direhits' => $direhits,
|
||||
'diremisses' => $diremisses,
|
||||
'accshits' => $accshits,
|
||||
'accsmisses' => $accsmisses,
|
||||
);
|
||||
|
||||
$tags = array('name' => $name, 'app_id' => $app_id, 'rrd_def' => $rrd_def, 'rrd_name' => $rrd_name);
|
||||
data_update($device, 'app', $tags, $fields);
|
83
includes/polling/applications/fbsd-nfs-server.inc.php
Normal file
83
includes/polling/applications/fbsd-nfs-server.inc.php
Normal file
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
|
||||
use LibreNMS\RRD\RrdDefinition;
|
||||
|
||||
$name = 'fbsd-nfs-server';
|
||||
$app_id = $app['app_id'];
|
||||
$options = '-o qv';
|
||||
$mib = 'NET-SNMP-EXTEND-MIB';
|
||||
$oid = 'nsExtendOutLine.13.102.98.115.100.110.102.115.115.101.114.118.101.114';
|
||||
$nfsserver = snmp_walk($device, $oid, $options, $mib);
|
||||
|
||||
list($getattr, $setattr, $lookup, $readlink, $read, $write, $create, $remove, $rename, $link, $symlink,
|
||||
$mkdir, $rmdir, $readdir, $rdirplus, $access, $mknod, $fsstat, $fsinfo, $pathconf, $commit, $retfailed,
|
||||
$faults, $inprog, $idem, $nonidem, $misses, $writeops, $writerpc, $opsaved) = explode("\n", $nfsserver);
|
||||
|
||||
$rrd_name = array('app', $name, $app_id);
|
||||
$rrd_def = RrdDefinition::make()
|
||||
->addDataset('getattr', 'derive', 0)
|
||||
->addDataset('setattr', 'derive', 0)
|
||||
->addDataset('lookup', 'derive', 0)
|
||||
->addDataset('readlink', 'derive', 0)
|
||||
->addDataset('read', 'derive', 0)
|
||||
->addDataset('write', 'derive', 0)
|
||||
->addDataset('create', 'derive', 0)
|
||||
->addDataset('remove', 'derive', 0)
|
||||
->addDataset('rename', 'derive', 0)
|
||||
->addDataset('link', 'derive', 0)
|
||||
->addDataset('symlink', 'derive', 0)
|
||||
->addDataset('mkdir', 'derive', 0)
|
||||
->addDataset('rmdir', 'derive', 0)
|
||||
->addDataset('readdir', 'derive', 0)
|
||||
->addDataset('rdirplus', 'derive', 0)
|
||||
->addDataset('access', 'derive', 0)
|
||||
->addDataset('mknod', 'derive', 0)
|
||||
->addDataset('fsstat', 'derive', 0)
|
||||
->addDataset('fsinfo', 'derive', 0)
|
||||
->addDataset('pathconf', 'derive', 0)
|
||||
->addDataset('commit', 'derive', 0)
|
||||
->addDataset('retfailed', 'derive', 0)
|
||||
->addDataset('faults', 'derive', 0)
|
||||
->addDataset('inprog', 'derive', 0)
|
||||
->addDataset('idem', 'derive', 0)
|
||||
->addDataset('nonidem', 'derive', 0)
|
||||
->addDataset('misses', 'derive', 0)
|
||||
->addDataset('writeops', 'derive', 0)
|
||||
->addDataset('writerpc', 'derive', 0)
|
||||
->addDataset('opsaved', 'derive', 0);
|
||||
|
||||
$fields = array(
|
||||
'getattr' => $getattr,
|
||||
'setattr' => $setattr,
|
||||
'lookup' => $lookup,
|
||||
'readlink' => $readlink,
|
||||
'read' => $read,
|
||||
'write' => $write,
|
||||
'create' => $create,
|
||||
'remove' => $remove,
|
||||
'rename' => $rename,
|
||||
'link' => $link,
|
||||
'symlink' => $symlink,
|
||||
'mkdir' => $mkdir,
|
||||
'rmdir' => $rmdir,
|
||||
'readdir' => $readdir,
|
||||
'rdirplus' => $rdirplus,
|
||||
'access' => $access,
|
||||
'mknod' => $mknod,
|
||||
'fsstat' => $fsstat,
|
||||
'fsinfo' => $fsinfo,
|
||||
'pathconf' => $pathconf,
|
||||
'commit' => $commit,
|
||||
'retfailed' => $retfailed,
|
||||
'faults' => $faults,
|
||||
'inprog' => $inprog,
|
||||
'idem' => $idem,
|
||||
'nonidem' => $nonidem,
|
||||
'misses' => $misses,
|
||||
'writeops' => $writeops,
|
||||
'writerpc' => $writerpc,
|
||||
'opsaved' => $opsaved,
|
||||
);
|
||||
|
||||
$tags = array('name' => $name, 'app_id' => $app_id, 'rrd_def' => $rrd_def, 'rrd_name' => $rrd_name);
|
||||
data_update($device, 'app', $tags, $fields);
|
Reference in New Issue
Block a user