1<?php 2 3/** 4 * Observium Network Management and Monitoring System 5 * Copyright (C) 2006-2015, Adam Armstrong - http://www.observium.org 6 * 7 * @package observium 8 * @subpackage webui 9 * @author Adam Armstrong <adama@observium.org> 10 * @copyright (C) 2006-2013 Adam Armstrong, (C) 2013-2019 Observium Limited 11 * 12 */ 13 14$graph_type = "mempool_usage"; 15 16$sql = "SELECT *, `mempools`.mempool_id as mempool_id"; 17$sql .= " FROM `mempools`"; 18//$sql .= " LEFT JOIN `mempools-state` USING(`mempool_id`)"; 19$sql .= " WHERE `device_id` = ?"; 20 21$mempools = dbFetchRows($sql, array($device['device_id'])); 22 23if (count($mempools)) 24{ 25 $box_args = array('title' => 'Memory', 26 'url' => generate_url(array('page' => 'device', 'device' => $device['device_id'], 'tab' => 'health', 'metric' => 'mempool')), 27 'icon' => $config['icon']['mempool'], 28 ); 29 echo generate_box_open($box_args); 30 31 echo('<table class="table table-condensed table-striped">'); 32 33 foreach ($mempools as $mempool) 34 { 35 $percent= round($mempool['mempool_perc'], 0); 36 $text_descr = rewrite_entity_name($mempool['mempool_descr']); 37 if ($mempool['mempool_total'] != '100') 38 { 39 $total = formatStorage($mempool['mempool_total']); 40 $used = formatStorage($mempool['mempool_used']); 41 $free = formatStorage($mempool['mempool_free']); 42 } else { 43 // If total == 100, than memory not have correct size and uses percents only 44 $total = $mempool['mempool_total'].'%'; 45 $used = $mempool['mempool_used'].'%'; 46 $free = $mempool['mempool_free'].'%'; 47 } 48 49 $background = get_percentage_colours($percent); 50 51 $graph_array = array(); 52 $graph_array['height'] = "100"; 53 $graph_array['width'] = "210"; 54 $graph_array['to'] = $config['time']['now']; 55 $graph_array['id'] = $mempool['mempool_id']; 56 $graph_array['type'] = $graph_type; 57 $graph_array['from'] = $config['time']['day']; 58 $graph_array['legend'] = "no"; 59 60 $link_array = $graph_array; 61 $link_array['page'] = "graphs"; 62 unset($link_array['height'], $link_array['width'], $link_array['legend']); 63 $link = generate_url($link_array); 64 65 $overlib_content = generate_overlib_content($graph_array, $device['hostname'] . " - " . $text_descr); 66 67 $graph_array['width'] = 80; $graph_array['height'] = 20; $graph_array['bg'] = 'ffffff00'; 68// $graph_array['style'][] = 'margin-top: -6px'; 69 70 $minigraph = generate_graph_tag($graph_array); 71 72 echo('<tr class="'.$background['class'].'"> 73 <td class="state-marker"></td> 74 <td class="entity" style="max-width: 100px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"><strong>'.generate_entity_link('mempool', $mempool).'</strong></td> 75 <td style="width: 90px">'.overlib_link($link, $minigraph, $overlib_content).'</td> 76 <td style="width: 200px">'.overlib_link($link, print_percentage_bar (200, 20, $percent, $used."/".$total." (".$percent . "%)", "ffffff", $background['left'], 77 $free . " (" . (100 - $percent) . "%)", "ffffff", $background['right']), $overlib_content).'</td> 78 </tr>'); 79 } 80 81 echo("</table>"); 82 echo generate_box_close(); 83} 84 85// EOF 86