junos mempools improvement from elec2

git-svn-id: http://www.observium.org/svn/observer/trunk@2733 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
Adam Amstrong
2011-11-21 16:01:10 +00:00
parent 7d85f5ff07
commit 69a849c3f0
2 changed files with 11 additions and 5 deletions

View File

@@ -6,6 +6,7 @@ if ($device['os'] == "junos")
echo("JUNOS : "); echo("JUNOS : ");
$mempools_array = snmpwalk_cache_multi_oid($device, "jnxOperatingBuffer", $mempools_array, "JUNIPER-MIB" , $config['install_dir']."/mibs/junos"); $mempools_array = snmpwalk_cache_multi_oid($device, "jnxOperatingBuffer", $mempools_array, "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
$mempools_array = snmpwalk_cache_multi_oid($device, "jnxOperatingDRAMSize", $mempools_array, "JUNIPER-MIB" , $config['install_dir']."/mibs/junos"); $mempools_array = snmpwalk_cache_multi_oid($device, "jnxOperatingDRAMSize", $mempools_array, "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
$mempools_array = snmpwalk_cache_multi_oid($device, "jnxOperatingMemory", $mempools_array, "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
$mempools_array = snmpwalk_cache_multi_oid($device, "jnxOperatingDescr", $mempools_array, "JUNIPER-MIB" , $config['install_dir']."/mibs/junos"); $mempools_array = snmpwalk_cache_multi_oid($device, "jnxOperatingDescr", $mempools_array, "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
if ($debug) { print_r($mempools_array); } if ($debug) { print_r($mempools_array); }
@@ -13,8 +14,9 @@ if ($device['os'] == "junos")
{ {
foreach ($mempools_array as $index => $entry) foreach ($mempools_array as $index => $entry)
{ {
if ($entry['jnxOperatingDRAMSize'] && !strpos($entry['jnxOperatingDescr'], "sensor") && !strstr($entry['jnxOperatingDescr'], "fan")) if ($entry['jnxOperatingDRAMSize'] || $entry['jnxOperatingMemory'])
{ {
if (stripos($entry['jnxOperatingDescr'], "sensor") || stripos($entry['jnxOperatingDescr'], "fan")) continue;
if ($debug) { echo($index . " " . $entry['jnxOperatingDescr'] . " -> " . $entry['jnxOperatingBuffer'] . " -> " . $entry['jnxOperatingDRAMSize'] . "\n"); } if ($debug) { echo($index . " " . $entry['jnxOperatingDescr'] . " -> " . $entry['jnxOperatingBuffer'] . " -> " . $entry['jnxOperatingDRAMSize'] . "\n"); }
$usage_oid = ".1.3.6.1.4.1.2636.3.1.13.1.8." . $index; $usage_oid = ".1.3.6.1.4.1.2636.3.1.13.1.8." . $index;
$descr = $entry['jnxOperatingDescr']; $descr = $entry['jnxOperatingDescr'];

View File

@@ -10,14 +10,18 @@ if (!is_array($mempool_cache['junos']))
$mempool_cache['junos'] = array(); $mempool_cache['junos'] = array();
$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, "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"); $mempool_cache['junos'] = snmpwalk_cache_multi_oid($device, "jnxOperatingDRAMSize", $mempool_cache['junos'], "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
$mempool_cache['junos'] = snmpwalk_cache_multi_oid($device, "jnxOperatingMemory", $mempool_cache['junos'], "JUNIPER-MIB" , $config['install_dir']."/mibs/junos");
if ($debug) { print_r($mempool_cache); } if ($debug) { print_r($mempool_cache); }
} }
$entry = $mempool_cache['junos'][$mempool[mempool_index]]; $entry = $mempool_cache['junos'][$mempool[mempool_index]];
$perc = $entry['jnxOperatingBuffer']; $perc = $entry['jnxOperatingBuffer'];
$mempool['total'] = $entry['jnxOperatingDRAMSize']; // FIX ME -- Maybe another OID? Some equipment do not provide jnxOperatingDRAMSize like MX960
$mempool['used'] = $entry['jnxOperatingDRAMSize'] / 100 * $perc; if ($entry['jnxOperatingDRAMSize']) $memory_available = $entry['jnxOperatingDRAMSize'];
$mempool['free'] = $entry['jnxOperatingDRAMSize'] - $mempool['used']; else $memory_available = ($entry['jnxOperatingMemory'] * 1024 * 1024);
$mempool['total'] = $memory_available;
$mempool['used'] = $memory_available / 100 * $perc;
$mempool['free'] = $memory_available - $mempool['used'];
?> ?>