Mega Code Archive

 
Categories / Php / Graphics
 

Create MRTG Graphic from rrd database (Need MRTG and RRDTool installed)

<? $rrdname = "/full/path/to/rrdfile.rrd"; $daygraph = "gifday.gif"; $weekgraph = "gifweek.gif"; $monthgraph= "gifmonth.gif"; $yeargraph = "gifyear.gif"; /* I don't suggest you to modify listing code below. */ $daystart = "-2000m"; $weekstart = "-12000m"; $monthstart = "-2880000"; $yearstart = "-34560000"; gambar($daygraph, $rrdname, $daystart); echo "<p align='center'><font face='verdana' size='2'><b>Daily graph</b></font>"; echo "<center><img src=images/$rowgraph[2]></center><p>"; gambar($weekgraph, $rrdname, $weekstart); echo "<p align='center'><font face='verdana' size='2'><b>Weekly graph</b></font>"; echo "<center><img src=images/$rowgraph[3]></center><p>"; gambar($monthgraph, $rrdname, $monthstart); echo "<p align='center'><font face='verdana' size='2'><b>Monthly graph</b></font>"; echo "<center><img src=images/$rowgraph[4]></center><p>"; gambar($yeargraph,$rrdname,$yearstart); echo "<p align='center'><font face='verdana' size='2'><b>Yearly graph</b></font>"; echo "<center><img src=images/$rowgraph[5]></center><p>"; function gambar($gif,$rrd, $start) { $comm="rrdtool graph images/$gif --alt-y-grid --lazy -c MGRID#ee0000 -c GRID#000000 -- start $start - -end now DEF:data0=$rrd:ds0:AVERAGE DEF:data1=$rrd:ds1:AVERAGE \"CDEF:input=data0,8,*\" \"CDEF:output=data1,8,*\" CDEF:ijo=input,100 ,GT,input,0,IF AREA:ijo#00BF00:\"Incoming traffic in Bits per second\\l\" LINE2:output#0000FF:\"Outgoing traffic in Bits per second \\l\" GPRINT:input:MAX:\"Maximal In\: %9.0lf bits.\" GPRINT:output:MAX:\"Maximal Out\: %9.0lf bits.\\l\" GPRINT:input:AVERAGE:\"Aver age In\: %9.0lf bits.\" GPRINT:output:AVERAGE:\"Average Out\: %9.0lf bits.\\l\" GPRINT:input:LAST:\"Current In\: %9.0lf bits.\" GPRI NT:output:LAST:\"Current Out\: %9.0lf bits.\\l\""; exec($comm); } ?>