mirror of
				https://github.com/librenms/librenms.git
				synced 2024-10-07 16:52:45 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			58 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| $storage_array = snmpwalk_cache_oid($device, 'hrStorageEntry', null, 'HOST-RESOURCES-MIB:HOST-RESOURCES-TYPES:NetWare-Host-Ext-MIB');
 | |
| 
 | |
| if (is_array($storage_array)) {
 | |
|     echo 'hrStorage : ';
 | |
|     foreach ($storage_array as $index => $storage) {
 | |
|         $fstype = $storage['hrStorageType'];
 | |
|         $descr  = $storage['hrStorageDescr'];
 | |
|         $size   = ($storage['hrStorageSize'] * $storage['hrStorageAllocationUnits']);
 | |
|         $used   = ($storage['hrStorageUsed'] * $storage['hrStorageAllocationUnits']);
 | |
|         $units  = $storage['hrStorageAllocationUnits'];
 | |
|         $deny   = 1;
 | |
| 
 | |
|         switch ($fstype) {
 | |
|             case 'hrStorageVirtualMemory':
 | |
|             case 'hrStorageRam';
 | |
|             case 'nwhrStorageDOSMemory';
 | |
|             case 'nwhrStorageMemoryAlloc';
 | |
|             case 'nwhrStorageMemoryPermanent';
 | |
|             case 'nwhrStorageMemoryAlloc';
 | |
|             case 'nwhrStorageCacheBuffers';
 | |
|             case 'nwhrStorageCacheMovable';
 | |
|             case 'nwhrStorageCacheNonMovable';
 | |
|             case 'nwhrStorageCodeAndDataMemory';
 | |
|             case 'nwhrStorageDOSMemory';
 | |
|             case 'nwhrStorageIOEngineMemory';
 | |
|             case 'nwhrStorageMSEngineMemory';
 | |
|             case 'nwhrStorageUnclaimedMemory';
 | |
|                 $deny = 0;
 | |
|             break;
 | |
|         }
 | |
| 
 | |
|         if ($device['os'] == 'vmware' && $descr == 'Real Memory') {
 | |
|             $deny = 0;
 | |
|         }
 | |
| 
 | |
|         if ($device['os'] == 'routeros' && $descr == 'main memory') {
 | |
|             $deny = 0;
 | |
|         }
 | |
| 
 | |
|         if (strstr($descr, 'MALLOC') || strstr($descr, 'UMA')) {
 | |
|             $deny = 1;
 | |
|         } //end if
 | |
|         if (strstr($descr, 'procfs') || strstr($descr, '/proc')) {
 | |
|             $deny = 1;
 | |
|         } //end if
 | |
| 
 | |
|         if (!$deny && is_numeric($index)) {
 | |
|             discover_mempool($valid_mempool, $device, $index, 'hrstorage', $descr, $units, null, null);
 | |
|         }
 | |
| 
 | |
|         unset($deny, $fstype, $descr, $size, $used, $units, $storage_rrd, $old_storage_rrd);
 | |
|     }//end foreach
 | |
| 
 | |
|     unset($storage_array);
 | |
| }//end if
 |