Frankie, I am not a web guru and tried to get a few times to get php installed with the library and failed. I gave up and simply used a bash cgi script. The trick for me was to send the output to >dev/null as the rrd graph gives an output of trend size which stuffed up sending the file back to the web page. When I rebuild my server and upgrade rrdtools I shall again try a php library.
Check out www.rjconway.homeip.net the solution is very simply. The web page source will show how I assemble the cgi arguments and I have included my cgi file below. This page also demonstrates using ajax to retrieve data and display it as gauges. I have created these gauges from scratch however they could easily be used for any type of application. The gauges are driven by the ability of raphaeljs, a fantastic SVG type library. Send an email direct as I have started a write-up on how the gauges work. ######################## CGI SCRIPT ON SERVER ##################### #!/bin/bash ## Strip HTML GET String into local variables ## STIME=`echo "$QUERY_STRING" | sed -n 's/^.*stime=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"` ETIME=`echo "$QUERY_STRING" | sed -n 's/^.*etime=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"` HIGHSCALE=`echo "$QUERY_STRING" | sed -n 's/^.*highscale=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"` LOWSCALE=`echo "$QUERY_STRING" | sed -n 's/^.*lowscale=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"` WIDTH=`echo "$QUERY_STRING" | sed -n 's/^.*width=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"` HEIGHT=`echo "$QUERY_STRING" | sed -n 's/^.*height=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"` TRENDTYPE=`echo "$QUERY_STRING" | sed -n 's/^.*ttype=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"` case "$TRENDTYPE" in 'ph') ## Aquarium PH GRAPH ## rrdtool graph /var/www/aqua.png --start $STIME --end $ETIME \ --upper-limit $HIGHSCALE --lower-limit $LOWSCALE --slope-mode --units-length 2 \ --interlaced \ --rigid \ --width $WIDTH --height $HEIGHT \ --vertical-label "pH\n" \ --color CANVAS#000000 \ --title "Aquarium pH" \ DEF:phv=/var/www/rrd/aqua_ph.rrd:P1:AVERAGE LINE1:phv#0000FF:"Ph=" \ VDEF:phlast=phv,LAST GPRINT:phlast:"%3.2lf%S" \ VDEF:phavg=phv,AVERAGE GPRINT:phavg:"avg=%3.2lf%spH " \ --watermark "Aquarium PH Graph">/dev/null ;; 'orp') ## Aquarium ORP GRAPH ## rrdtool graph /var/www/aqua.png --start $STIME --end $ETIME \ --upper-limit $HIGHSCALE --lower-limit $LOWSCALE --slope-mode --units-length 2 \ --interlaced \ --rigid \ --width $WIDTH --height $HEIGHT \ --title "Aquarium ORP" \ --vertical-label "mV" \ --color CANVAS#000000 \ DEF:orp=/var/www/rrd/aqua_orp.rrd:O1:AVERAGE \ LINE1:orp#FF3D0D:"Orp=" \ VDEF:orplast=orp,LAST GPRINT:orplast:"%4.0lf%smV" \ VDEF:orpavg=orp,AVERAGE GPRINT:orpavg:"avg=%4.0lf%smV" \ --watermark "Aquarium Orp / Conductivity Graph" >/dev/null ;; esac ## Send output to web page ## echo Content-type: image/png echo cat aqua.png -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of frankie Sent: Monday, June 22, 2009 11:33 PM To: [email protected] Subject: [rrd-users] Generate rrd graph in real time Hi all, I want to generate the graph realtime when the web page is visited by someone similar to cacti . Is php-rrdtool is the only way to do it? THX -- View this message in context: http://n2.nabble.com/Generate-rrd-graph-in-real-time-tp3136242p3136242.html Sent from the RRDtool Users Mailinglist mailing list archive at Nabble.com. _______________________________________________ rrd-users mailing list [email protected] https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.339 / Virus Database: 270.12.85/2193 - Release Date: 06/21/09 20:02:00 _______________________________________________ rrd-users mailing list [email protected] https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users
