Observium_CE/html/includes/graphs/global/jnx_cos_queues.inc.php

68 lines
1.5 KiB
PHP

<?php
/**
* Observium
*
* This file is part of Observium.
*
* @package observium
* @subpackage graphs
* @copyright (C) Adam Armstrong
*
*/
$units = "b";
$total_units = "B";
$nototal = 1;
$queue = (is_numeric($vars['queue']) ? $vars['queue'] : 1);
$metrics = ['QedBytes',
'QedPkts',
'TailDropPkts',
'TotalRedDropPkts',
'TotalRedDropBytes',
];
if (in_array($vars['ds'], $metrics)) {
$ds = $vars['ds'];
} else {
$ds = array_pop($metrics);
}
switch ($ds) {
case 'QedBytes':
case 'TotalRedDropBytes':
$multiplier = 8;
break;
default:
break;
}
$rows = dbFetchRows("SELECT * FROM `entity_attribs` WHERE `attrib_type` = 'jnx_cos_queues'");
foreach ($rows as $row) {
$queues = json_decode($row['attrib_value']);
if (in_array($queue, $queues)) {
$port = get_port_by_id_cache($row['entity_id']);
$device = device_by_id_cache($port['device_id']);
$rrd_filename = $config['rrd_dir'] . '/' . $device['hostname'] . '/' . 'port-' . get_port_rrdindex($port) . '-' . $queue . '-jnx_cos_qstat.rrd';
$rrd_list[] = ['filename' => $rrd_filename,
'descr' => $device['hostname'] . ' ' . $port['port_label_short'],
'ds' => $ds];
}
}
//print_r($rrd_list);
$colours = 'mixed';
include($config['html_dir'] . "/includes/graphs/generic_multi_simplex_separated.inc.php");