#!/bin/sh # Script by Georges Rosset # to update and graph temperature # 19.01.2004 # ============================================================= # User defined variables: # -------------------------------------------------- logfile="/usr/local/rrdtool/datas/tempLast"; rrdfile="/usr/local/rrdtool/datas/temperature.rrd"; htmldir="/WWW/temperature"; # -------------------------------------------------- # # Note: below replace "path2digitemp" with the # actual path to the digitemp software: # --------------------------------------------- cd /path2digitemp/ /path2digitemp/digitemp -a -o"%.2C" | tail -n1 > $logfile # --------------------------------------------- # value=$( tail $logfile ) # /usr/local/rrdtool/bin/rrdtool update $rrdfile N:$value # # Create 24hrs image /usr/local/rrdtool/bin/rrdtool graph $htmldir/tempDaily.png --title="Variations sur 24hrs (moyenne sur 5 minutes)" \ DEF:tempC=$rrdfile:temp:LAST -v"° Celsius" -aPNG -h250 -w700 \ LINE2:tempC#DD0000:"Température" \ CDEF:nodat=tempC,tempC,+,UN,INF,UNKN,IF \ HRULE:0#0000DD \ AREA:nodat#BBBBBB:"NoData" # # Create 7 days image /usr/local/rrdtool/bin/rrdtool graph $htmldir/tempWeekly.png --title="Variations sur 7 jours (moyenne sur 1 hr)" \ DEF:tempC=$rrdfile:temp:AVERAGE -v"° Celsius" -aPNG -h150 -w700 -s-604800 \ LINE2:tempC#DD0000:"Température" \ CDEF:nodat=tempC,tempC,+,UN,INF,UNKN,IF \ HRULE:0#0000DD \ AREA:nodat#BBBBBB:"NoData" # # Create 28 days image /usr/local/rrdtool/bin/rrdtool graph $htmldir/tempMonthly.png --title="Variations sur 28 jours" \ -v"° Celsius" -aPNG -h150 -w700 -s-2419200 \ DEF:tempC=$rrdfile:temp:AVERAGE \ LINE2:tempC#DD0000:"Température" \ CDEF:nodat=tempC,tempC,+,UN,INF,UNKN,IF \ HRULE:0#0000DD \ AREA:nodat#BBBBBB:"NoData" # # Create 60 days image /usr/local/rrdtool/bin/rrdtool graph $htmldir/temp2Monthly.png --title="Variations sur 60 jours (-60j < 0)" \ -v"° Celsius" -aPNG -h150 -w700 -l0 -u25 -s-5184000 \ DEF:tempC=$rrdfile:temp:AVERAGE \ LINE2:tempC#DD0000:"Température" \ CDEF:nodatp=tempC,tempC,+,UN,INF,UNKN,IF \ CDEF:nodatn=tempC,tempC,+,UN,NEGINF,UNKN,IF \ HRULE:0#0000DD \ AREA:nodatp#BBBBBB:"NoData" \ AREA:nodatn#BBBBBB # # Create 2nd 60 days image /usr/local/rrdtool/bin/rrdtool graph $htmldir/temp3Monthly.png --title="Variations sur 60 jours (-120j < -60j)" \ -v"° Celsius" -aPNG -h150 -w700 -l0 -u25 -s-10368000 -e-5184000 \ DEF:tempC=$rrdfile:temp:AVERAGE \ LINE2:tempC#DD0000:"Température" \ CDEF:nodatp=tempC,tempC,+,UN,INF,UNKN,IF \ CDEF:nodatn=tempC,tempC,+,UN,NEGINF,UNKN,IF \ HRULE:0#0000DD \ AREA:nodatp#BBBBBB:"NoData" \ AREA:nodatn#BBBBBB # # # Create 3th 60 days image /usr/local/rrdtool/bin/rrdtool graph $htmldir/temp4Monthly.png --title="Variations sur 60 jours (-180j < -120j)" \ -v"° Celsius" -aPNG -h150 -w700 -l0 -u25 -s-15552000 -e-10368000 \ DEF:tempC=$rrdfile:temp:AVERAGE \ LINE2:tempC#DD0000:"Température" \ CDEF:nodatp=tempC,tempC,+,UN,INF,UNKN,IF \ CDEF:nodatn=tempC,tempC,+,UN,NEGINF,UNKN,IF \ HRULE:0#0000DD \ AREA:nodatp#BBBBBB:"NoData" \ AREA:nodatn#BBBBBB # # Create 1 year image /usr/local/rrdtool/bin/rrdtool graph $htmldir/tempYearly.png --title="Variations sur une année" \ -v"° Celsius" -aPNG -h150 -w700 -s-31449600 \ DEF:tempMin=$rrdfile:temp:MIN \ DEF:tempMax=$rrdfile:temp:MAX \ AREA:tempMax#EEDDAA:"Variations journalières" \ AREA:tempMin#FFFFFF \ LINE1:tempMax#DD0000:"Max journalière" \ LINE1:tempMin#0000DD:"Min journalière" \ CDEF:nodatp=tempMax,tempMin,+,UN,INF,UNKN,IF \ CDEF:nodatn=tempMax,tempMin,+,UN,NEGINF,UNKN,IF \ HRULE:0#0000DD \ AREA:nodatp#BBBBBB:"NoData" \ AREA:nodatn#BBBBBB # date > $htmldir/lastdate.txt echo -Température: $value ° Celsius > $htmldir/lasttemp.txt cd -