mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-31 01:35:36 +02:00
2009-04-06 Evi Vanoost <vanooste@rcbi.rochester.edu>
* reporting/fgraph.php: Simplified agent access to reduce looping * reporting/pChart/pChart.class: Found problem where the graph was looping with certain data when the Scale1 was exactly 1 git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1599 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
This commit is contained in:
parent
2e566a1738
commit
e615a6be89
@ -1,3 +1,10 @@
|
|||||||
|
2009-04-06 Evi Vanoost <vanooste@rcbi.rochester.edu>
|
||||||
|
|
||||||
|
* reporting/fgraph.php: Simplified agent access to reduce looping
|
||||||
|
|
||||||
|
* reporting/pChart/pChart.class: Found problem where the graph was
|
||||||
|
looping with certain data when the Scale1 was exactly 1
|
||||||
|
|
||||||
2009-04-06 Sancho Lerena <slerena@artica.es>
|
2009-04-06 Sancho Lerena <slerena@artica.es>
|
||||||
|
|
||||||
* godmode/setup/setup.php
|
* godmode/setup/setup.php
|
||||||
|
@ -430,10 +430,7 @@ function graphic_agentmodules ($id_agent, $width, $height) {
|
|||||||
function graphic_agentaccess ($id_agent, $width, $height, $period = 0) {
|
function graphic_agentaccess ($id_agent, $width, $height, $period = 0) {
|
||||||
global $config;
|
global $config;
|
||||||
|
|
||||||
/* BROKEN: Need to fix, it gets 100% CPU of Apache !!!*/
|
|
||||||
|
|
||||||
$data = array();
|
$data = array();
|
||||||
/*
|
|
||||||
|
|
||||||
$resolution = $config["graph_res"] * ($period * 2 / $width); // Number of "slices" we want in graph
|
$resolution = $config["graph_res"] * ($period * 2 / $width); // Number of "slices" we want in graph
|
||||||
|
|
||||||
@ -443,48 +440,26 @@ function graphic_agentaccess ($id_agent, $width, $height, $period = 0) {
|
|||||||
$periodtime = floor ($period / $interval);
|
$periodtime = floor ($period / $interval);
|
||||||
$time = array ();
|
$time = array ();
|
||||||
$data = array ();
|
$data = array ();
|
||||||
|
|
||||||
for ($i = 0; $i < $interval; $i++) {
|
for ($i = 0; $i < $interval; $i++) {
|
||||||
$time[$i]['timestamp_bottom'] = $datelimit + ($periodtime * $i);
|
$bottom = $datelimit + ($periodtime * $i);
|
||||||
$time[$i]['timestamp_top'] = $datelimit + ($periodtime * ($i + 1));
|
$top = $datelimit + ($periodtime * ($i + 1));
|
||||||
$data[$time[$i]['timestamp_bottom']] = 0;
|
$data[$bottom] = (int) get_db_sql ("SELECT COUNT(*) FROM tagent_access WHERE
|
||||||
|
id_agent = ".$id_agent." AND
|
||||||
|
utimestamp > ".$bottom." AND
|
||||||
|
utimestamp < ".$top);
|
||||||
}
|
}
|
||||||
|
|
||||||
$result = get_db_all_rows_filter ('tagent_access',
|
|
||||||
array ('id_agent' => $id_agent,
|
|
||||||
"utimestamp > $datelimit",
|
|
||||||
"utimestamp < $date"),
|
|
||||||
array ('utimestamp'));
|
|
||||||
|
|
||||||
|
|
||||||
if ($result === false)
|
|
||||||
$result = array ();
|
|
||||||
|
|
||||||
|
|
||||||
// SEEMS that problem is below
|
|
||||||
// it get's 100% cpu on apache and problem is localed here, I don't exactly
|
|
||||||
// why or what is happening here, but i'm sure that the problem is here.
|
|
||||||
|
|
||||||
$max_value = 0;
|
|
||||||
foreach ($result as $access) {
|
|
||||||
$utimestamp = $access['utimestamp'];
|
|
||||||
for ($i = 0; $i < $interval; $i++) {
|
|
||||||
if ($utimestamp <= $time[$i]['timestamp_top'] && $utimestamp >= $time[$i]['timestamp_bottom']) {
|
|
||||||
$data[$time[$i]['timestamp_bottom']]++;
|
|
||||||
$max_value = max ($max_value, $data[$time[$i]['timestamp_bottom']]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
$engine = get_graph_engine ($period);
|
$engine = get_graph_engine ($period);
|
||||||
|
|
||||||
$engine->width = $width;
|
$engine->width = $width;
|
||||||
$engine->height = $height;
|
$engine->height = $height;
|
||||||
$engine->data = &$data;
|
$engine->data = $data;
|
||||||
$engine->max_value = $max_value;
|
$engine->max_value = max ($data);
|
||||||
$engine->show_title = false;
|
$engine->show_title = false;
|
||||||
$engine->fontpath = $config['fontpath'];
|
$engine->fontpath = $config['fontpath'];
|
||||||
$engine->xaxis_interval = floor ($width / 72);
|
$engine->xaxis_interval = floor ($width / 72);
|
||||||
$engine->yaxis_interval = $max_value;
|
$engine->yaxis_interval = max ($data);
|
||||||
$engine->xaxis_format = 'date';
|
$engine->xaxis_format = 'date';
|
||||||
$engine->watermark = false;
|
$engine->watermark = false;
|
||||||
$engine->show_grid = false;
|
$engine->show_grid = false;
|
||||||
|
@ -693,8 +693,8 @@
|
|||||||
$Scale2 = ( $this->VMax - $this->VMin ) / $Factor / 2;
|
$Scale2 = ( $this->VMax - $this->VMin ) / $Factor / 2;
|
||||||
$Scale4 = ( $this->VMax - $this->VMin ) / $Factor / 4;
|
$Scale4 = ( $this->VMax - $this->VMin ) / $Factor / 4;
|
||||||
|
|
||||||
if ( $Scale1 > 1 && $Scale1 <= $MaxDivs && !$ScaleOk) { $ScaleOk = TRUE; $Divisions = floor($Scale1); $Scale = 1;}
|
if ( $Scale1 >= 1 && $Scale1 <= $MaxDivs && !$ScaleOk) { $ScaleOk = TRUE; $Divisions = floor($Scale1); $Scale = 1;}
|
||||||
if ( $Scale2 > 1 && $Scale2 <= $MaxDivs && !$ScaleOk) { $ScaleOk = TRUE; $Divisions = floor($Scale2); $Scale = 2;}
|
if ( $Scale2 >= 1 && $Scale2 <= $MaxDivs && !$ScaleOk) { $ScaleOk = TRUE; $Divisions = floor($Scale2); $Scale = 2;}
|
||||||
if (!$ScaleOk)
|
if (!$ScaleOk)
|
||||||
{
|
{
|
||||||
if ( $Scale2 > 1 ) { $Factor = $Factor * 10; }
|
if ( $Scale2 > 1 ) { $Factor = $Factor * 10; }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user