Commit version 24.12.13800

This commit is contained in:
2025-01-06 17:35:06 -05:00
parent b7f6a79c2c
commit 55d9218816
6133 changed files with 4239740 additions and 1374287 deletions

View File

@ -5,9 +5,9 @@
*
* This file is part of Observium.
*
* @package observium
* @subpackage poller
* @copyright (C) 2006-2013 Adam Armstrong, (C) 2013-2019 Observium Limited
* @package observium
* @subpackage poller
* @copyright (C) Adam Armstrong
*
*/
@ -33,22 +33,23 @@
//$entry = $cache_storage['cisco-flash-mib'][$storage['storage_index']];
$storage['units'] = 1;
if ($storage['storage_hc'])
{
$oids = array('ciscoFlashPartitionSizeExtended.' . $storage['storage_index'], 'ciscoFlashPartitionFreeSpaceExtended.' . $storage['storage_index']);
$entry = snmp_get_multi_oid($device, $oids, array(), "CISCO-FLASH-MIB");
$entry = array_shift($entry);
$storage['size'] = $entry['ciscoFlashPartitionSizeExtended'];
$storage['free'] = $entry['ciscoFlashPartitionFreeSpaceExtended'];
if ($storage['storage_hc']) {
$oids = ['ciscoFlashPartitionSizeExtended.' . $storage['storage_index'], 'ciscoFlashPartitionFreeSpaceExtended.' . $storage['storage_index']];
$entry = snmp_get_multi_oid($device, $oids, [], "CISCO-FLASH-MIB");
$entry = array_shift($entry);
$storage['size'] = $entry['ciscoFlashPartitionSizeExtended'];
$storage['free'] = $entry['ciscoFlashPartitionFreeSpaceExtended'];
} else {
$oids = array('ciscoFlashPartitionSize.' . $storage['storage_index'], 'ciscoFlashPartitionFreeSpace.' . $storage['storage_index']);
$entry = snmp_get_multi_oid($device, $oids, array(), "CISCO-FLASH-MIB");
$entry = array_shift($entry);
$storage['size'] = $entry['ciscoFlashPartitionSize'];
$storage['free'] = $entry['ciscoFlashPartitionFreeSpace'];
$oids = ['ciscoFlashPartitionSize.' . $storage['storage_index'], 'ciscoFlashPartitionFreeSpace.' . $storage['storage_index']];
$entry = snmp_get_multi_oid($device, $oids, [], "CISCO-FLASH-MIB");
$entry = array_shift($entry);
$storage['size'] = $entry['ciscoFlashPartitionSize'];
$storage['free'] = $entry['ciscoFlashPartitionFreeSpace'];
}
if (OBS_DEBUG > 1 && count($entry)) {
print_vars($entry);
}
if (OBS_DEBUG > 1 && count($entry)) { print_vars($entry); }
$storage['used'] = $storage['size'] - $storage['free'];
$storage['used'] = $storage['size'] - $storage['free'];
// EOF

View File

@ -4,56 +4,56 @@
*
* This file is part of Observium.
*
* @package observium
* @subpackage poller
* @copyright (C) 2006-2013 Adam Armstrong, (C) 2013-2020 Observium Limited
* @package observium
* @subpackage poller
* @copyright (C) Adam Armstrong
*
*/
$wmi_found = FALSE;
if (isset($wmi['disk']['logical']) && safe_count($wmi['disk']['logical'])) {
echo(" Storage WMI: ");
echo(" Storage WMI: ");
//print_debug_vars($storage);
//print_debug_vars($wmi['disk']['logical']);
/*
* storage_descr => "C:\\ Label: Serial Number d0122308"
*
* DeviceID => "C:"
* Name => "C:"
* VolumeName => ""
* VolumeSerialNumber => "D0122308"
*/
foreach ($wmi['disk']['logical'] as $disk) {
//$storage_name = $disk['DeviceID'] . "\\\\ Label:" . $disk['VolumeName'] . " Serial Number " . ltrim(strtolower($disk['VolumeSerialNumber']), '0');
$disk_name = $disk['DeviceID'] . '\\\\';
$disk_label = 'Label:' . $disk['VolumeName'];
$disk_serial = 'Serial Number ' . ltrim(strtolower($disk['VolumeSerialNumber']), '0');
$wmi_found = str_starts($storage['storage_descr'], $disk_name) &&
str_contains_array($storage['storage_descr'], $disk_label) &&
str_ends($storage['storage_descr'], $disk_serial);
if ($wmi_found) {
// Found
//$storage['units'] = 1;
$storage['free'] = $disk['FreeSpace'];
$storage['used'] = $disk['Size'] - $disk['FreeSpace'];
$storage['size'] = $disk['Size'];
break;
//print_debug_vars($storage);
//print_debug_vars($wmi['disk']['logical']);
/*
* storage_descr => "C:\\ Label: Serial Number d0122308"
*
* DeviceID => "C:"
* Name => "C:"
* VolumeName => ""
* VolumeSerialNumber => "D0122308"
*/
foreach ($wmi['disk']['logical'] as $disk) {
//$storage_name = $disk['DeviceID'] . "\\\\ Label:" . $disk['VolumeName'] . " Serial Number " . ltrim(strtolower($disk['VolumeSerialNumber']), '0');
$disk_name = $disk['DeviceID'] . '\\\\';
$disk_label = 'Label:' . $disk['VolumeName'];
$disk_serial = 'Serial Number ' . ltrim(strtolower($disk['VolumeSerialNumber']), '0');
$wmi_found = str_starts($storage['storage_descr'], $disk_name) &&
str_contains_array($storage['storage_descr'], $disk_label) &&
str_ends($storage['storage_descr'], $disk_serial);
if ($wmi_found) {
// Found
//$storage['units'] = 1;
$storage['free'] = $disk['FreeSpace'];
$storage['used'] = $disk['Size'] - $disk['FreeSpace'];
$storage['size'] = $disk['Size'];
break;
}
}
}
}
if (!$wmi_found) {
$hrStorage = snmp_cache_table($device, "hrStorageEntry", [], "HOST-RESOURCES-MIB:HOST-RESOURCES-TYPES");
$hrStorage = snmp_cache_table($device, "hrStorageEntry", [], "HOST-RESOURCES-MIB:HOST-RESOURCES-TYPES");
$entry = $hrStorage[$storage['storage_index']];
$entry = $hrStorage[$storage['storage_index']];
$storage['units'] = $entry['hrStorageAllocationUnits'];
$storage['used'] = snmp_dewrap32bit($entry['hrStorageUsed']) * $storage['units'];
$storage['size'] = snmp_dewrap32bit($entry['hrStorageSize']) * $storage['units'];
$storage['units'] = $entry['hrStorageAllocationUnits'];
$storage['used'] = snmp_dewrap32bit($entry['hrStorageUsed']) * $storage['units'];
$storage['size'] = snmp_dewrap32bit($entry['hrStorageSize']) * $storage['units'];
$storage['free'] = $storage['size'] - $storage['used'];
$storage['free'] = $storage['size'] - $storage['used'];
}
// EOF

View File

@ -5,50 +5,48 @@
*
* This file is part of Observium.
*
* @package observium
* @subpackage poller
* @copyright (C) 2006-2013 Adam Armstrong, (C) 2013-2019 Observium Limited
* @package observium
* @subpackage poller
* @copyright (C) Adam Armstrong
*
*/
// UCD-SNMP-MIB
echo(' UCD-SNMP-MIB: ');
$ucd_oids = array();
if ($storage['storage_hc'])
{
if ($cache_storage['ucd-snmp-mib-walked']['storage_hc'] !== TRUE) // Hack for real caching
{
$ucd_oids = array('dskTotalHigh', 'dskTotalLow', 'dskUsedHigh', 'dskUsedLow', 'dskAvailHigh', 'dskAvailLow');
$cache_storage['ucd-snmp-mib-walked']['storage_hc'] = TRUE;
}
$ucd_oids = [];
if ($storage['storage_hc']) {
if ($cache_storage['ucd-snmp-mib-walked']['storage_hc'] !== TRUE) // Hack for real caching
{
$ucd_oids = ['dskTotalHigh', 'dskTotalLow', 'dskUsedHigh', 'dskUsedLow', 'dskAvailHigh', 'dskAvailLow'];
$cache_storage['ucd-snmp-mib-walked']['storage_hc'] = TRUE;
}
} else {
if ($cache_storage['ucd-snmp-mib-walked']['storage'] !== TRUE) // Hack for real caching
{
$ucd_oids = array('dskTotal', 'dskUsed', 'dskAvail');
$cache_storage['ucd-snmp-mib-walked']['storage'] = TRUE;
}
if ($cache_storage['ucd-snmp-mib-walked']['storage'] !== TRUE) // Hack for real caching
{
$ucd_oids = ['dskTotal', 'dskUsed', 'dskAvail'];
$cache_storage['ucd-snmp-mib-walked']['storage'] = TRUE;
}
}
$index = $storage['storage_index'];
$index = $storage['storage_index'];
$storage['units'] = 1024; // Hardcode units.
foreach ($ucd_oids as $oid)
{
$cache_storage['ucd-snmp-mib'] = snmpwalk_cache_oid($device, $oid, $cache_storage['ucd-snmp-mib'], 'UCD-SNMP-MIB');
foreach ($ucd_oids as $oid) {
$cache_storage['ucd-snmp-mib'] = snmpwalk_cache_oid($device, $oid, $cache_storage['ucd-snmp-mib'], 'UCD-SNMP-MIB');
}
foreach (array('size' => 'dskTotal', 'used' => 'dskUsed', 'free' => 'dskAvail') as $param => $oid)
{
if ($storage['storage_hc'])
{
$storage[$param] = snmp_size64_high_low($cache_storage['ucd-snmp-mib'][$index][$oid.'High'], $cache_storage['ucd-snmp-mib'][$index][$oid.'Low']);
$storage[$param] *= $storage['units'];
} else {
$storage[$param] = $cache_storage['ucd-snmp-mib'][$index][$oid] * $storage['units'];
}
foreach (['size' => 'dskTotal', 'used' => 'dskUsed', 'free' => 'dskAvail'] as $param => $oid) {
if ($storage['storage_hc']) {
$storage[$param] = snmp_size64_high_low($cache_storage['ucd-snmp-mib'][$index][$oid . 'High'], $cache_storage['ucd-snmp-mib'][$index][$oid . 'Low']);
$storage[$param] *= $storage['units'];
} else {
$storage[$param] = $cache_storage['ucd-snmp-mib'][$index][$oid] * $storage['units'];
}
}
if ($storage['storage_hc'] && ($storage['size'] - $storage['used'] - $storage['free']) > 100) { $storage['used'] = $storage['size'] - $storage['free']; } // F.u. BSNMPd
if ($storage['storage_hc'] && ($storage['size'] - $storage['used'] - $storage['free']) > 100) {
$storage['used'] = $storage['size'] - $storage['free'];
} // F.u. BSNMPd
// EOF