add generic memory pool poller and add old-cisco-memory-pool-mib support

git-svn-id: http://www.observium.org/svn/observer/trunk@931 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
Adam Amstrong
2010-02-22 00:57:13 +00:00
parent 32255a829f
commit d58bd29035
11 changed files with 238 additions and 4 deletions
+32
View File
@@ -0,0 +1,32 @@
<?php
include("common.inc.php");
$rrd_options .= " -u 100 -l 0 -E -b 1024 ";
$iter = "1";
$sql = mysql_query("SELECT * FROM `mempools` AS C, `devices` AS D where C.`mempool_id` = '".mres($_GET['id'])."' AND C.device_id = D.device_id");
$rrd_options .= " COMMENT:\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Cur\ \ \ \ Max\\\\n";
while($mempool = mysql_fetch_array($sql)) {
if($iter=="1") {$colour="CC0000";} elseif($iter=="2") {$colour="008C00";} elseif($iter=="3") {$colour="4096EE";
} elseif($iter=="4") {$colour="73880A";} elseif($iter=="5") {$colour="D01F3C";} elseif($iter=="6") {$colour="36393D";
} elseif($iter=="7") {$colour="FF0084"; unset($iter); }
$descr = $entPhysicalName . " " . $mempool['mempool_descr'];
$descr = str_replace("Routing Processor", "RP", $descr);
$descr = str_replace("Switching Processor", "SP", $descr);
$descr = str_replace("Processor", "Proc", $descr);
$descr = str_pad($descr, 28);
$descr = substr($descr,0,28);
$rrd = $config['rrd_dir'] . "/".$mempool['hostname']."/" . safename("mempool-".$mempool['mempool_type']."-".$mempool['mempool_index'].".rrd");
$id = $mempool['mempool_type'] . "-" . $mempool['mempool_index'];
$rrd_options .= " DEF:mempool" . $id . "free=$rrd:free:AVERAGE ";
$rrd_options .= " DEF:mempool" . $id . "used=$rrd:used:AVERAGE ";
$rrd_options .= " CDEF:mempool" . $id . "total=mempool" . $id . "used,mempool" . $id . "used,mempool" . $id . "free,+,/,100,* ";
$rrd_options .= " LINE1:mempool" . $id . "total#" . $colour . ":'" . $descr . "' ";
$rrd_options .= " GPRINT:mempool" . $id . "total:LAST:%3.0lf";
$rrd_options .= " GPRINT:mempool" . $id . "total:MAX:%3.0lf\\\l ";
$iter++;
}
?>
+3 -2
View File
@@ -72,8 +72,9 @@ echo("<div style='float:right; width: 50%;'>");
### Right Pane
include("overview/processors.inc.php");
include("overview/cemp.inc.php");
include("overview/cmp.inc.php");
include("overview/mempools.inc.php");
#include("overview/cemp.inc.php");
#include("overview/cmp.inc.php");
include("overview/hrStorage.inc.php");
include("overview/temperatures.inc.php");
include("overview/fanspeeds.inc.php");
@@ -0,0 +1,51 @@
<?php
if(mysql_result(mysql_query("SELECT count(*) from mempools WHERE device_id = '" . $device['device_id'] . "'"),0)) {
echo("<div style='background-color: #eeeeee; margin: 5px; padding: 5px;'>");
echo("<p style='padding: 0px 5px 5px;' class=sectionhead>Memory Pools</p>");
echo("<table width=100% cellspacing=0 cellpadding=5>");
$mempool_rows = '1';
$mempools = mysql_query("SELECT * FROM `mempools` WHERE device_id = '" . $device['device_id'] . "'");
while($mempool = mysql_fetch_array($mempools)) {
if(is_integer($mempool_rows/2)) { $row_colour = $list_colour_a; } else { $row_colour = $list_colour_b; }
$perc = round($mempool['mempool_used'] / ($mempool['mempool_total']) * 100,2);
$text_descr = $mempool['mempool_descr'];
$text_descr = str_replace("Routing Processor", "RP", $text_descr);
$text_descr = str_replace("Switching Processor", "SP", $text_descr);
$text_descr = str_replace("Processor", "Proc", $text_descr);
$text_descr = str_replace("Sub-Module", "Mod", $text_descr);
$text_descr = str_replace("DFC Card", "DFC", $text_descr);
$mempool_url = "/device/".$device['device_id']."/health/memory/";
$mini_url = $config['base_url'] . "/graph.php?id=".$mempool['mempool_id']."&type=mempool&from=".$day."&to=".$now."&width=80&height=20&bg=f4f4f4";
$mempool_popup = "onmouseover=\"return overlib('<div class=list-large>".$device['hostname']." - ".$text_descr;
$mempool_popup .= "</div><img src=\'graph.php?id=" . $mempool['mempool_id'] . "&type=mempool&from=$month&to=$now&width=400&height=125\'>";
$mempool_popup .= "', RIGHT".$config['overlib_defaults'].");\" onmouseout=\"return nd();\"";
$total = formatStorage($mempool['mempool_total']);
$used = formatStorage($mempool['mempool_used']);
$free = formatStorage($mempool['mempool_free']);
if($perc > '90') { $left_background='c4323f'; $right_background='C96A73';
} elseif($perc > '75') { $left_background='bf5d5b'; $right_background='d39392';
} elseif($perc > '50') { $left_background='bf875b'; $right_background='d3ae92';
} elseif($perc > '25') { $left_background='5b93bf'; $right_background='92b7d3';
} else { $left_background='9abf5b'; $right_background='bbd392'; }
echo("<tr bgcolor=$row_colour><td class=tablehead><a href='".$mempool_url."' $mempool_popup>" . $text_descr . "</a></td>
<td width=90><a href='".$mempool_url."' $mempool_popup><img src='$mini_url'></a></td>
<td width=200><a href='".$mempool_url."' $mempool_popup>
".print_percentage_bar (200, 20, $perc, "$used / $total", "ffffff", $left_background, $perc . "%", "ffffff", $right_background)."
</a></td>
</tr>");
$mempool_rows++;
}
echo("</table>");
echo("</div>");
}
?>