2010-07-29 20:34:31 +00:00
|
|
|
<?php
|
|
|
|
|
2018-07-12 15:30:39 -05:00
|
|
|
use LibreNMS\Config;
|
2018-02-05 07:39:13 -06:00
|
|
|
use LibreNMS\OS;
|
2010-07-29 20:34:31 +00:00
|
|
|
|
2018-02-05 07:39:13 -06:00
|
|
|
$valid['sensor'] = [];
|
2016-06-29 00:14:21 +01:00
|
|
|
|
2018-02-05 07:39:13 -06:00
|
|
|
/** @var OS $os */
|
|
|
|
$pre_cache = $os->preCache();
|
2017-06-26 23:27:57 +01:00
|
|
|
|
2021-06-16 21:15:47 +02:00
|
|
|
if ($device['os'] == 'rittal-cmc-iii-pu' || $device['os'] == 'rittal-lcp') {
|
2020-11-11 23:11:50 +01:00
|
|
|
include 'includes/discovery/sensors/rittal-cmc-iii-sensors.inc.php';
|
|
|
|
} else {
|
|
|
|
// Run custom sensors
|
|
|
|
require 'includes/discovery/sensors/cisco-entity-sensor.inc.php';
|
|
|
|
require 'includes/discovery/sensors/entity-sensor.inc.php';
|
|
|
|
require 'includes/discovery/sensors/ipmi.inc.php';
|
|
|
|
}
|
2010-07-29 20:34:31 +00:00
|
|
|
|
2012-04-05 16:17:41 +00:00
|
|
|
if ($device['os'] == 'netscaler') {
|
2016-01-17 20:47:47 +00:00
|
|
|
include 'includes/discovery/sensors/netscaler.inc.php';
|
2012-04-05 16:17:41 +00:00
|
|
|
}
|
2012-01-17 15:58:34 +00:00
|
|
|
|
2015-10-12 15:15:14 +01:00
|
|
|
if ($device['os'] == 'openbsd') {
|
2016-01-17 20:47:47 +00:00
|
|
|
include 'includes/discovery/sensors/openbsd.inc.php';
|
2015-10-12 15:15:14 +01:00
|
|
|
}
|
|
|
|
|
2021-11-05 03:38:15 +01:00
|
|
|
if ($device['os'] == 'linux') {
|
|
|
|
include 'includes/discovery/sensors/rpigpiomonitor.inc.php';
|
|
|
|
}
|
|
|
|
|
2022-07-22 07:59:41 -05:00
|
|
|
if (isset($device['hardware']) && strstr($device['hardware'], 'Dell')) {
|
2017-03-11 18:03:04 -06:00
|
|
|
include 'includes/discovery/sensors/fanspeed/dell.inc.php';
|
2017-02-09 08:00:23 +00:00
|
|
|
include 'includes/discovery/sensors/power/dell.inc.php';
|
2017-03-11 18:03:04 -06:00
|
|
|
include 'includes/discovery/sensors/voltage/dell.inc.php';
|
|
|
|
include 'includes/discovery/sensors/state/dell.inc.php';
|
|
|
|
include 'includes/discovery/sensors/temperature/dell.inc.php';
|
2017-02-03 12:39:38 +00:00
|
|
|
}
|
|
|
|
|
2022-07-22 07:59:41 -05:00
|
|
|
if (isset($device['hardware']) && strstr($device['hardware'], 'ProLiant')) {
|
2017-03-11 18:03:04 -06:00
|
|
|
include 'includes/discovery/sensors/state/hp.inc.php';
|
2017-03-09 22:05:01 +00:00
|
|
|
}
|
|
|
|
|
2018-10-12 23:37:08 +02:00
|
|
|
if ($device['os'] == 'gw-eydfa') {
|
|
|
|
include 'includes/discovery/sensors/gw-eydfa.inc.php';
|
|
|
|
}
|
2023-01-02 14:47:17 +01:00
|
|
|
if ($device['os'] == 'loop-telecom') {
|
|
|
|
include 'includes/discovery/sensors/temperature/loop-telecom.inc.php';
|
|
|
|
}
|
2018-10-12 23:37:08 +02:00
|
|
|
|
2017-02-03 12:39:38 +00:00
|
|
|
$run_sensors = [
|
|
|
|
'airflow',
|
|
|
|
'current',
|
|
|
|
'charge',
|
|
|
|
'dbm',
|
2017-03-11 18:03:04 -06:00
|
|
|
'fanspeed',
|
|
|
|
'frequency',
|
2017-02-03 12:39:38 +00:00
|
|
|
'humidity',
|
|
|
|
'load',
|
2020-05-31 01:24:43 +02:00
|
|
|
'loss',
|
2017-02-03 12:39:38 +00:00
|
|
|
'power',
|
2019-01-20 19:24:11 +01:00
|
|
|
'power_consumed',
|
|
|
|
'power_factor',
|
2017-02-03 12:39:38 +00:00
|
|
|
'runtime',
|
|
|
|
'signal',
|
2017-03-11 18:03:04 -06:00
|
|
|
'state',
|
2019-01-20 19:24:11 +01:00
|
|
|
'count',
|
2017-03-11 18:03:04 -06:00
|
|
|
'temperature',
|
2021-01-03 23:35:32 +02:00
|
|
|
'tv_signal',
|
2022-01-08 18:17:08 +01:00
|
|
|
'bitrate',
|
2017-03-11 18:03:04 -06:00
|
|
|
'voltage',
|
2017-05-23 16:28:45 +01:00
|
|
|
'snr',
|
2017-09-29 21:13:27 +01:00
|
|
|
'pressure',
|
|
|
|
'cooling',
|
2017-12-13 03:27:10 +01:00
|
|
|
'delay',
|
|
|
|
'quality_factor',
|
|
|
|
'chromatic_dispersion',
|
|
|
|
'ber',
|
2018-01-18 21:50:19 +01:00
|
|
|
'eer',
|
|
|
|
'waterflow',
|
2020-10-20 17:11:12 -07:00
|
|
|
'percent',
|
2017-02-03 12:39:38 +00:00
|
|
|
];
|
2018-07-12 15:30:39 -05:00
|
|
|
|
|
|
|
// filter submodules
|
|
|
|
$run_sensors = array_intersect($run_sensors, Config::get('discovery_submodules.sensors', $run_sensors));
|
|
|
|
|
2021-10-08 14:04:11 -05:00
|
|
|
sensors($run_sensors, $os, $valid, $pre_cache);
|
2017-02-08 04:54:30 +00:00
|
|
|
unset(
|
|
|
|
$pre_cache,
|
|
|
|
$run_sensors,
|
|
|
|
$entitysensor
|
|
|
|
);
|