mirror of
				https://github.com/librenms/librenms.git
				synced 2024-10-07 16:52:45 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
// Attempt to draw a graph out of DSes we've collected from Munin plugins.
 | 
						|
// Reverse engineering ftw!
 | 
						|
$scale_min = 0;
 | 
						|
 | 
						|
require 'includes/graphs/common.inc.php';
 | 
						|
 | 
						|
if ($width > '500') {
 | 
						|
    $descr_len = 24;
 | 
						|
}
 | 
						|
else {
 | 
						|
    $descr_len  = 14;
 | 
						|
    $descr_len += round(($width - 230) / 8.2);
 | 
						|
}
 | 
						|
 | 
						|
if ($width > '500') {
 | 
						|
    $rrd_options .= " COMMENT:'".substr(str_pad($mplug['mplug_vlabel'], $descr_len), 0, $descr_len)."   Current   Average  Maximum\l'";
 | 
						|
    $rrd_options .= " COMMENT:'\l'";
 | 
						|
}
 | 
						|
else {
 | 
						|
    $rrd_options .= " COMMENT:'".substr(str_pad($mplug['mplug_vlabel'], $descr_len), 0, $descr_len)."   Current   Average  Maximum\l'";
 | 
						|
}
 | 
						|
 | 
						|
$c_i = 0;
 | 
						|
$dbq = dbFetchRows('SELECT * FROM `munin_plugins_ds` WHERE `mplug_id` = ?', array($mplug['mplug_id']));
 | 
						|
foreach ($dbq as $ds) {
 | 
						|
    $ds_filename = $plugfile.'_'.$ds['ds_name'].'.rrd';
 | 
						|
    $ds_name     = $ds['ds_name'];
 | 
						|
 | 
						|
    $cmd_def .= ' DEF:'.$ds['ds_name'].'='.$ds_filename.':val:AVERAGE';
 | 
						|
 | 
						|
    if (!empty($ds['ds_cdef'])) {
 | 
						|
        $cmd_cdef .= '';
 | 
						|
        $ds_name   = $ds['ds_name'].'_cdef';
 | 
						|
    }
 | 
						|
 | 
						|
    if ($ds['ds_graph'] == 'yes') {
 | 
						|
        if (empty($ds['colour'])) {
 | 
						|
            if (!$config['graph_colours']['mixed'][$c_i]) {
 | 
						|
                $c_i = 0;
 | 
						|
            }
 | 
						|
 | 
						|
            $colour = $config['graph_colours']['mixed'][$c_i];
 | 
						|
            $c_i++;
 | 
						|
        }
 | 
						|
        else {
 | 
						|
            $colour = $ds['colour'];
 | 
						|
        }
 | 
						|
 | 
						|
        $descr = rrdtool_escape($ds['ds_label'], $descr_len);
 | 
						|
 | 
						|
        $cmd_graph .= ' '.$ds['ds_draw'].':'.$ds_name.'#'.$colour.":'".$descr."'";
 | 
						|
        $cmd_graph .= ' GPRINT:'.$ds_name.':LAST:"%6.2lf%s"';
 | 
						|
        $cmd_graph .= ' GPRINT:'.$ds_name.':AVERAGE:"%6.2lf%s"';
 | 
						|
        $cmd_graph .= ' GPRINT:'.$ds_name.':MAX:"%6.2lf%s\\n"';
 | 
						|
    }
 | 
						|
}//end foreach
 | 
						|
 | 
						|
$rrd_options .= $cmd_def.$cmd_cdef.$cmd_graph;
 |