PHP Classes
elePHPant
Icontem

File: test.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of monjurul hasan  >  RRD Manipulator  >  test.php  >  Download  
File: test.php
Role: Example script
Content type: text/plain
Description: Test Script for the class
Class: RRD Manipulator
Retrieve server traffic information using RRDTool
Author: By
Last change:
Date: 5 years ago
Size: 3,306 bytes
 

Contents

Class file image Download
<?
/*******************************
* Author: Md.Monjurul Hasan
* Date Created: 26-10-2009
* Last Modified: 28-10-2009
*
* Description - RRD data manipulator
*/

/***************included files*******/
include ("HelperFunc.php");
require_once (
"rrd_manipulator.php");

//read config file
if(is_readable('config.php')) {
  require_once(
'config.php');
  global
$mrtg_config, $fixed_pages;
 
$rrd_dir = $mrtg_config ['rrd_path'];//get the rrd files path
 
$rrds = $mrtg_config['rrd_array'];//get comma separated rrd names from config file
}
//variable declaration
$cur_in ="";
$cur_out ="";
$max_in ="";
$max_out ="";
$avg_in ="";
$avg_out ="";
$helper = new HelperFunc;
$graph_type = "daily";
//get rrd array from the comma separated rrd array string of config file
$each_rrd = split(",",$rrds);
?>

<!--- HTML Code -->
<html>
<head><title>MRTG-RRDTool Manipulator using PHP</title>
<meta http-equiv = "Content-Type" content = "text/html; charset = utf-8" />
<meta http-equiv = "refresh" content = "600;URL = test.php" /> <!-- after 10 mins (10*60), this page is auto refreshed -->
<link rel="stylesheet" type="text/css" href="datagrid.css" /> <!-- css file -->
</head>
<body>
<div id='main'>
  <h3>RRD Manipulator</h3>
  Daily BW Usage
   <table class='tbl'> <!--table to show output values -->
    <thead><tr>
      <td class='tbl-header'>Client Name</td><td class='tbl-header'>Cur in</td><td class='tbl-header'>Cur out</td><td class='tbl-header'>Avg in</td><td class='tbl-header'>Avg out</td><td class='tbl-header'>Max in</td><td class='tbl-header'>Max out</td><td class='tbl-header'>95% in</td><td class='tbl-header'>95% out</td>
    </thead></tr>
    <tbody>
<!-- process each rrd -->
<?
$count
= 0;
for (
$c = 0; $c < count($each_rrd); $c++) {
 
$myrrdmrtg = new rrdmrtg($each_rrd[$c]);//call the class
 
$ret = $myrrdmrtg->manipulate_rrd($myrrdmrtg->myrrdfile, $graph_type);

 
$result = $helper->format_bits($ret['current_in']); // result[0] is value and result[1] is Mbps/kbps/Gbps
 
$cur_in = $result[0]." ".$result[1];

 
$result = $helper->format_bits($ret['current_out']);
 
$cur_out = $result[0]." ".$result[1];

 
$result = $helper->format_bits($ret['average_in']);
 
$avg_in = $result[0]." ".$result[1];

 
$result = $helper->format_bits($ret['average_out']);
 
$avg_out = $result[0]." ".$result[1];

 
$result = $helper->format_bits($ret['max_in']);
 
$max_in = $result[0]." ".$result[1];

 
$result = $helper->format_bits($ret['max_out']);
 
$max_out = $result[0]." ".$result[1];

 
$result = $helper->format_bits($ret['percentile_in']);
 
$percentile_in = $result[0]." ".$result[1];

 
$result = $helper->format_bits($ret['percentile_out']);
 
$percentile_out = $result[0]." ".$result[1];

?>
<tr <? if ($count%2==0) {echo "class='tbl-row tbl-row-even'";} else {echo "class='tbl-row tbl-row-odd'";} ?> >
     <td><?=$each_rrd[$c]?></td><td><? echo $cur_in;?></td><td><? echo $cur_out;?></td></td><td><? echo $avg_in;?></td><td><? echo $avg_out;?></td><td><? echo $max_in;?></td><td><? echo $max_out;?><td><? echo $percentile_in;?></td><td><? echo $percentile_out;?></td>
   </tr>
<?
  $count
++;
  }
?>
</tbody>
   <tfoot>
   <tr class='tbl-footer'>
     <td style='text-align: left'>Total <?echo $count;?> results found</td>
   </tr>
   </tfoot>
   </table>
</div>
</body>
</html>