2010-02-09 16:36:06 +00:00
|
|
|
<?php
|
2017-12-24 22:18:48 +02:00
|
|
|
/*
|
|
|
|
|
* LibreNMS
|
|
|
|
|
*
|
|
|
|
|
* This program is free software: you can redistribute it and/or modify it
|
|
|
|
|
* under the terms of the GNU General Public License as published by the
|
|
|
|
|
* Free Software Foundation, either version 3 of the License, or (at your
|
|
|
|
|
* option) any later version. Please see LICENSE.txt at the top level of
|
|
|
|
|
* the source code distribution for details.
|
|
|
|
|
*
|
|
|
|
|
* @package LibreNMS
|
|
|
|
|
* @subpackage webui
|
|
|
|
|
* @link http://librenms.org
|
|
|
|
|
* @copyright 2017 LibreNMS
|
|
|
|
|
* @author LibreNMS Contributors
|
|
|
|
|
*/
|
2010-02-09 16:36:06 +00:00
|
|
|
|
2018-11-08 16:29:20 -06:00
|
|
|
$no_refresh = true;
|
|
|
|
|
|
2014-01-13 10:05:19 +00:00
|
|
|
$datas = array('mempool','processor','storage');
|
2016-08-18 20:28:22 -05:00
|
|
|
if ($used_sensors['temperature']) {
|
|
|
|
|
$datas[] = 'temperature';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['charge']) {
|
|
|
|
|
$datas[] = 'charge';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['humidity']) {
|
|
|
|
|
$datas[] = 'humidity';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['fanspeed']) {
|
|
|
|
|
$datas[] = 'fanspeed';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['voltage']) {
|
|
|
|
|
$datas[] = 'voltage';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['frequency']) {
|
|
|
|
|
$datas[] = 'frequency';
|
|
|
|
|
}
|
2016-09-19 11:04:02 -04:00
|
|
|
if ($used_sensors['runtime']) {
|
|
|
|
|
$datas[] = 'runtime';
|
|
|
|
|
}
|
2016-08-18 20:28:22 -05:00
|
|
|
if ($used_sensors['current']) {
|
|
|
|
|
$datas[] = 'current';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['power']) {
|
|
|
|
|
$datas[] = 'power';
|
|
|
|
|
}
|
2019-01-20 19:24:11 +01:00
|
|
|
if ($used_sensors['power_consumed']) {
|
|
|
|
|
$datas[] = 'power_consumed';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['power_factor']) {
|
|
|
|
|
$datas[] = 'power_factor';
|
|
|
|
|
}
|
2016-08-18 20:28:22 -05:00
|
|
|
if ($used_sensors['dbm']) {
|
|
|
|
|
$datas[] = 'dbm';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['load']) {
|
|
|
|
|
$datas[] = 'load';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['state']) {
|
|
|
|
|
$datas[] = 'state';
|
|
|
|
|
}
|
2019-01-20 19:24:11 +01:00
|
|
|
if ($used_sensors['count']) {
|
|
|
|
|
$datas[] = 'count';
|
|
|
|
|
}
|
2016-08-18 20:28:22 -05:00
|
|
|
if ($used_sensors['signal']) {
|
|
|
|
|
$datas[] = 'signal';
|
|
|
|
|
}
|
2017-05-23 16:28:45 +01:00
|
|
|
if ($used_sensors['snr']) {
|
|
|
|
|
$datas[] = 'snr';
|
|
|
|
|
}
|
2017-09-29 21:13:27 +01:00
|
|
|
if ($used_sensors['pressure']) {
|
|
|
|
|
$datas[] = 'pressure';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['cooling']) {
|
|
|
|
|
$datas[] = 'cooling';
|
|
|
|
|
}
|
2017-10-31 20:31:56 +00:00
|
|
|
if ($used_sensors['toner']) {
|
|
|
|
|
$datas[] = 'toner';
|
|
|
|
|
}
|
2017-12-13 03:27:10 +01:00
|
|
|
if ($used_sensors['delay']) {
|
|
|
|
|
$datas[] = 'delay';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['quality_factor']) {
|
|
|
|
|
$datas[] = 'quality_factor';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['chromatic_dispersion']) {
|
|
|
|
|
$datas[] = 'chromatic_dispersion';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['ber']) {
|
|
|
|
|
$datas[] = 'ber';
|
|
|
|
|
}
|
2018-01-18 21:50:19 +01:00
|
|
|
if ($used_sensors['eer']) {
|
|
|
|
|
$datas[] = 'eer';
|
|
|
|
|
}
|
|
|
|
|
if ($used_sensors['waterflow']) {
|
|
|
|
|
$datas[] = 'waterflow';
|
|
|
|
|
}
|
2011-04-09 14:22:43 +00:00
|
|
|
|
|
|
|
|
$type_text['overview'] = "Overview";
|
|
|
|
|
$type_text['temperature'] = "Temperature";
|
2015-02-25 15:54:37 -07:00
|
|
|
$type_text['charge'] = "Battery Charge";
|
2011-04-09 14:22:43 +00:00
|
|
|
$type_text['humidity'] = "Humidity";
|
|
|
|
|
$type_text['mempool'] = "Memory";
|
2015-06-02 19:42:08 +02:00
|
|
|
$type_text['storage'] = "Storage";
|
2011-04-09 14:22:43 +00:00
|
|
|
$type_text['diskio'] = "Disk I/O";
|
|
|
|
|
$type_text['processor'] = "Processor";
|
2011-04-13 14:12:57 +00:00
|
|
|
$type_text['voltage'] = "Voltage";
|
2011-04-09 14:22:43 +00:00
|
|
|
$type_text['fanspeed'] = "Fanspeed";
|
|
|
|
|
$type_text['frequency'] = "Frequency";
|
2016-09-19 11:04:02 -04:00
|
|
|
$type_text['runtime'] = "Runtime";
|
2011-04-09 14:22:43 +00:00
|
|
|
$type_text['current'] = "Current";
|
2011-04-20 09:59:48 +00:00
|
|
|
$type_text['power'] = "Power";
|
2019-01-20 19:24:11 +01:00
|
|
|
$type_text['power_consumed'] = "Power Consumed";
|
|
|
|
|
$type_text['power_factor'] = "Power Factor";
|
2011-09-23 13:54:40 +00:00
|
|
|
$type_text['toner'] = "Toner";
|
2015-06-02 19:06:15 +02:00
|
|
|
$type_text['dbm'] = "dBm";
|
2015-06-11 20:52:12 +02:00
|
|
|
$type_text['load'] = "Load";
|
2016-02-27 02:35:28 +01:00
|
|
|
$type_text['state'] = "State";
|
2019-01-20 19:24:11 +01:00
|
|
|
$type_text['count'] = "Count";
|
2016-03-22 10:37:07 -04:00
|
|
|
$type_text['signal'] = "Signal";
|
2017-05-23 16:28:45 +01:00
|
|
|
$type_text['snr'] = "SNR";
|
2017-09-29 21:13:27 +01:00
|
|
|
$type_text['pressure'] = "Pressure";
|
|
|
|
|
$type_text['cooling'] = "Cooling";
|
2017-10-31 20:31:56 +00:00
|
|
|
$type_text['toner'] = 'Toner';
|
2017-12-13 03:27:10 +01:00
|
|
|
$type_text['delay'] = 'Delay';
|
|
|
|
|
$type_text['quality_factor'] = 'Quality factor';
|
|
|
|
|
$type_text['chromatic_dispersion'] = 'Chromatic Dispersion';
|
|
|
|
|
$type_text['ber'] = 'Bit Error Rate';
|
2018-01-18 21:50:19 +01:00
|
|
|
$type_text['eer'] = 'Energy Efficiency Ratio';
|
|
|
|
|
$type_text['waterflow'] = 'Water Flow Rate';
|
2010-04-11 13:45:19 +00:00
|
|
|
|
2019-04-11 23:26:42 -05:00
|
|
|
$active_metric = basename($vars['metric'] ?? 'processor');
|
|
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if (!$vars['view']) {
|
|
|
|
|
$vars['view'] = "detail";
|
|
|
|
|
}
|
2011-09-18 13:11:04 +00:00
|
|
|
|
|
|
|
|
$link_array = array('page' => 'health');
|
2010-06-12 12:07:16 +00:00
|
|
|
|
2017-12-24 22:18:48 +02:00
|
|
|
$navbar = '<span style="font-weight: bold;">Health</span> » ';
|
2010-03-06 01:32:41 +00:00
|
|
|
$sep = "";
|
2015-07-13 20:10:26 +02:00
|
|
|
foreach ($datas as $texttype) {
|
|
|
|
|
$metric = strtolower($texttype);
|
2017-12-24 22:18:48 +02:00
|
|
|
$navbar .= $sep;
|
2019-04-11 23:26:42 -05:00
|
|
|
if ($active_metric == $metric) {
|
2017-12-24 22:18:48 +02:00
|
|
|
$navbar .= '<span class="pagemenu-selected">';
|
2015-07-13 20:10:26 +02:00
|
|
|
}
|
2017-12-24 22:18:48 +02:00
|
|
|
$navbar .= generate_link($type_text[$metric], $link_array, array('metric'=> $metric, 'view' => $vars['view']));
|
2019-04-11 23:26:42 -05:00
|
|
|
if ($active_metric == $metric) {
|
2017-12-24 22:18:48 +02:00
|
|
|
$navbar .= '</span>';
|
2015-07-13 20:10:26 +02:00
|
|
|
}
|
|
|
|
|
$sep = ' | ';
|
2010-02-11 01:48:55 +00:00
|
|
|
}
|
2016-08-18 20:28:22 -05:00
|
|
|
unset($sep);
|
2010-02-11 01:48:55 +00:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($vars['view'] == "graphs") {
|
2017-12-24 22:18:48 +02:00
|
|
|
$displayoptions = '<span class="pagemenu-selected">';
|
2010-06-12 14:18:56 +00:00
|
|
|
}
|
2017-12-24 22:18:48 +02:00
|
|
|
|
2019-04-11 23:26:42 -05:00
|
|
|
$displayoptions .= generate_link("Graphs", $link_array, ['metric'=> $active_metric, 'view' => "graphs"]);
|
2017-12-24 22:18:48 +02:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($vars['view'] == "graphs") {
|
2017-12-24 22:18:48 +02:00
|
|
|
$displayoptions .= '</span>';
|
2011-03-17 00:09:20 +00:00
|
|
|
}
|
|
|
|
|
|
2017-12-24 22:18:48 +02:00
|
|
|
$displayoptions .= ' | ';
|
2011-03-17 00:09:20 +00:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($vars['view'] != "graphs") {
|
2017-12-24 22:18:48 +02:00
|
|
|
$displayoptions .= '<span class="pagemenu-selected">';
|
2010-06-12 14:18:56 +00:00
|
|
|
}
|
2011-03-17 00:09:20 +00:00
|
|
|
|
2019-04-11 23:26:42 -05:00
|
|
|
$displayoptions .= generate_link("No Graphs", $link_array, ['metric'=> $active_metric, 'view' => "detail"]);
|
2010-02-11 01:48:55 +00:00
|
|
|
|
2015-07-13 20:10:26 +02:00
|
|
|
if ($vars['view'] != "graphs") {
|
2017-12-24 22:18:48 +02:00
|
|
|
$displayoptions .= '</span>';
|
2011-04-09 12:35:24 +00:00
|
|
|
}
|
2010-02-11 01:48:55 +00:00
|
|
|
|
2019-04-11 23:26:42 -05:00
|
|
|
$valid_metrics = array_merge(array_keys($used_sensors), [
|
|
|
|
|
'processor',
|
|
|
|
|
'storage',
|
|
|
|
|
'toner',
|
|
|
|
|
'mempool',
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
if (in_array($active_metric, $valid_metrics)) {
|
|
|
|
|
include("includes/html/pages/health/$active_metric.inc.php");
|
2016-08-18 20:28:22 -05:00
|
|
|
} else {
|
2019-04-11 23:26:42 -05:00
|
|
|
echo("No sensors of type $active_metric found.");
|
2010-02-09 16:36:06 +00:00
|
|
|
}
|