2010-02-25 01:30:07 +00:00
|
|
|
<?php
|
|
|
|
|
2011-03-15 12:04:26 +00:00
|
|
|
$oid = $mempool['mempool_index'];
|
2010-02-25 01:30:07 +00:00
|
|
|
|
2011-03-16 01:11:27 +00:00
|
|
|
if ($debug) { echo("JunOS Mempool"); }
|
2010-07-18 09:59:03 +00:00
|
|
|
|
2011-03-15 12:04:26 +00:00
|
|
|
if (!is_array($mempool_cache['junos']))
|
|
|
|
{
|
2011-03-16 01:11:27 +00:00
|
|
|
if ($debug) { echo("caching"); }
|
2010-02-25 01:30:07 +00:00
|
|
|
$mempool_cache['junos'] = array();
|
2010-07-31 19:12:40 +00:00
|
|
|
$mempool_cache['junos'] = snmpwalk_cache_multi_oid($device, "jnxOperatingBuffer", $mempool_cache['junos'], "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
|
|
|
|
$mempool_cache['junos'] = snmpwalk_cache_multi_oid($device, "jnxOperatingDRAMSize", $mempool_cache['junos'], "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
|
2011-11-21 16:01:10 +00:00
|
|
|
$mempool_cache['junos'] = snmpwalk_cache_multi_oid($device, "jnxOperatingMemory", $mempool_cache['junos'], "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
|
2011-03-15 12:04:26 +00:00
|
|
|
if ($debug) { print_r($mempool_cache); }
|
2010-02-25 01:30:07 +00:00
|
|
|
}
|
|
|
|
|
2010-08-11 17:08:56 +00:00
|
|
|
$entry = $mempool_cache['junos'][$mempool[mempool_index]];
|
2010-02-25 01:30:07 +00:00
|
|
|
|
|
|
|
$perc = $entry['jnxOperatingBuffer'];
|
2011-11-21 16:01:10 +00:00
|
|
|
// FIX ME -- Maybe another OID? Some equipment do not provide jnxOperatingDRAMSize like MX960
|
|
|
|
if ($entry['jnxOperatingDRAMSize']) $memory_available = $entry['jnxOperatingDRAMSize'];
|
|
|
|
else $memory_available = ($entry['jnxOperatingMemory'] * 1024 * 1024);
|
|
|
|
$mempool['total'] = $memory_available;
|
|
|
|
$mempool['used'] = $memory_available / 100 * $perc;
|
|
|
|
$mempool['free'] = $memory_available - $mempool['used'];
|
2010-02-25 01:30:07 +00:00
|
|
|
|
2011-11-21 16:01:10 +00:00
|
|
|
?>
|