commit version 22.12.12447

This commit is contained in:
2023-01-01 22:36:12 -05:00
parent af1b03d79f
commit b948283a96
744 changed files with 620715 additions and 27381 deletions

View File

@ -1,5 +1,4 @@
<?php
/**
* Observium
*
@ -7,7 +6,7 @@
*
* @package observium
* @subpackage discovery
* @copyright (C) 2006-2013 Adam Armstrong, (C) 2013-2021 Observium Limited
* @copyright (C) 2006-2013 Adam Armstrong, (C) 2013-2022 Observium Limited
*
*/
@ -58,20 +57,20 @@ foreach (explode("\n", $oids) as $data)
for ($encNum = 1; $encNum <= 8; $encNum++) {
$table = "hwEnclosure$encNum";
$enclosures = snmpwalk_cache_oid($device, $table, [], "ARECA-SNMP-MIB");
if (!isset($enclosures[0]) || !$enclosures[0]["hwEnclosure0${encNum}Installed"]) {
if (!isset($enclosures[0]) || !$enclosures[0]["hwEnclosure0{$encNum}Installed"]) {
// Index 0 is the main enclosure data, we check if the enclosure is connected, but it will
// not have any sensors of its own, so we skip index 0.
continue;
}
$enclosure = $enclosures[0];
unset($enclosures[0]);
$name = $enclosure["hwEnclosure0${encNum}Description"];
$name = $enclosure["hwEnclosure0{$encNum}Description"];
foreach ($enclosures as $index => $entry) {
if ($entry["hwEnclosure0${encNum}VolIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0${encNum}VolDesc"];
if ($entry["hwEnclosure0{$encNum}VolIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0{$encNum}VolDesc"];
$oid_num = ".1.3.6.1.4.1.18928.1.2.2." . ($encNum+1) . ".8.1.3.$index";
$oid_name = "hwEnclosure0${encNum}VolValue";
$oid_name = "hwEnclosure0{$encNum}VolValue";
$value = $entry[$oid_name];
//discover_sensor('voltage', $device, $oid_num, "$oid_name.$index", 'areca', $descr, 0.001, $value);
@ -79,10 +78,10 @@ for ($encNum = 1; $encNum <= 8; $encNum++) {
discover_sensor_ng($device, 'voltage', $mib, $oid_name, $oid_num, $index, NULL, $descr, 0.001, $value, $options);
}
if ($entry["hwEnclosure0${encNum}FanIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0${encNum}FanDesc"];
if ($entry["hwEnclosure0{$encNum}FanIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0{$encNum}FanDesc"];
$oid_num = ".1.3.6.1.4.1.18928.1.2.2." . ($encNum+1) . ".9.1.3.$index";
$oid_name = "hwEnclosure0${encNum}FanSpeed";
$oid_name = "hwEnclosure0{$encNum}FanSpeed";
$value = $entry[$oid_name];
//discover_sensor('fanspeed', $device, $oid_num, "$oid_name.$index", 'areca', $descr, 1, $value);
@ -90,10 +89,10 @@ for ($encNum = 1; $encNum <= 8; $encNum++) {
discover_sensor_ng($device, 'fanspeed', $mib, $oid_name, $oid_num, $index, NULL, $descr, 1, $value, $options);
}
if ($entry["hwEnclosure0${encNum}TempIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0${encNum}TempDesc"];
if ($entry["hwEnclosure0{$encNum}TempIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0{$encNum}TempDesc"];
$oid_num = ".1.3.6.1.4.1.18928.1.2.2." . ($encNum+1) . ".10.1.3.$index";
$oid_name = "hwEnclosure0${encNum}TempValue";
$oid_name = "hwEnclosure0{$encNum}TempValue";
$value = $entry[$oid_name];
//discover_sensor('temperature', $device, $oid_num, "$oid_name.$index", 'areca', $descr, 1, $value);
@ -101,13 +100,13 @@ for ($encNum = 1; $encNum <= 8; $encNum++) {
discover_sensor_ng($device, 'temperature', $mib, $oid_name, $oid_num, $index, NULL, $descr, 1, $value, $options);
}
if ($entry["hwEnclosure0${encNum}PowerIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0${encNum}PowerDesc"];
if ($entry["hwEnclosure0{$encNum}PowerIndex"]) {
$descr = $name . ' (' . $encNum . ') ' . $entry["hwEnclosure0{$encNum}PowerDesc"];
$oid_num = ".1.3.6.1.4.1.18928.1.2.2." . ($encNum+1) . ".7.1.3.$index";
$oid_name = "hwEnclosure0${encNum}PowerState";
$oid_name = "hwEnclosure0{$encNum}PowerState";
$value = $entry[$oid_name];
//discover_status($device, $oid, "hwEnclosure0${encNum}PowerState.$index", 'areca-power-state', $descr, $value, array('entPhysicalClass' => 'power'));
//discover_status($device, $oid, "hwEnclosure0{$encNum}PowerState.$index", 'areca-power-state', $descr, $value, array('entPhysicalClass' => 'power'));
discover_status_ng($device, $mib, $oid_name, $oid_num, $index, 'areca-power-state', $descr, $value, [ 'entPhysicalClass' => 'power' ]);
}
}
@ -118,21 +117,21 @@ for ($encNum = 1; $encNum <= 8; $encNum++) {
for ($encNum = 1; $encNum <= 8; $encNum++) {
$table = "hddEnclosure$encNum";
$enclosures = snmpwalk_cache_oid($device, $table, [], "ARECA-SNMP-MIB");
if (!isset($enclosures[0]) || !$enclosures[0]["hddEnclosure0${encNum}Installed"]) {
if (!isset($enclosures[0]) || !$enclosures[0]["hddEnclosure0{$encNum}Installed"]) {
// Index 0 is the main enclosure data, we check if the enclosure is connected, but it will
// not have any sensors of its own, so we skip index 0.
continue;
}
$enclosure = $enclosures[0];
unset($enclosures[0]);
$name = $enclosure["hddEnclosure0${encNum}Description"];
$name = $enclosure["hddEnclosure0{$encNum}Description"];
foreach ($enclosures as $index => $entry) {
if ($entry["hddEnclosure0${encNum}Name"] === 'N.A.') { continue; }
if ($entry["hddEnclosure0{$encNum}Name"] === 'N.A.') { continue; }
$descr = 'Slot ' . $entry["hddEnclosure0${encNum}Slots"] . ', ' . trim($entry["hddEnclosure0${encNum}Name"]) . ' (SN: ' . trim($entry["hddEnclosure0${encNum}Serial"]) . ", $name)";
$descr = 'Slot ' . $entry["hddEnclosure0{$encNum}Slots"] . ', ' . trim($entry["hddEnclosure0{$encNum}Name"]) . ' (SN: ' . trim($entry["hddEnclosure0{$encNum}Serial"]) . ", $name)";
$oid_num = ".1.3.6.1.4.1.18928.1.2.3." . $encNum . ".4.1.8.$index";
$oid_name = "hddEnclosure0${encNum}State";
$oid_name = "hddEnclosure0{$encNum}State";
$value = $entry[$oid_name];
discover_status_ng($device, $mib, $oid_name, $oid_num, $index, 'areca-hdd-state', $descr, $value, [ 'entPhysicalClass' => 'storage' ]);