5) Installation du script de commande et création des pages html
Le script de commande checkTemp.sh
fait fonctionner le tout. On le téléchargera à partir de ce lien
(choisir Enregistrer la cible sous...) et on le copiera sur le serveur
hors de visibilité du serveur Web, c'est à dire ni dans les répertoires des pages
html, ni dans les répertoires CGI. On lui donnera l'attribut
exécutable pour root :
chown root:root checkTemp.sh
chmod 700 checkTemp.sh
Puis avec vi (ou tout autre éditeur Unix) on modifiera
les 4 lignes suivantes pour tenir compte de l'environnement spécifique:
logfile="/usr/local/rrdtool/datas/tempLast";
rrdfile="/usr/local/rrdtool/datas/temperature.rrd";
htmldir="/WWW/temperature";
/path2digitemp/digitemp -a -o"%.2C" | tail -n1 > $logfile
logfile est le chemin d'accès et le nom du fichier de travail du script. Généralement on le
placera au même endroit que la base de donnée. Ce fichier contient toujours la dernière mesure de température.
rrdfile est le chemin d'accès et le nom de la base de donnée Round Robin.
htmldir est le chemin d'accès des fichiers html des pages de mesure de température. Les relevés de
températures seront plaçés dans ce répertoire.
path2digitemp doit être remplacé par le chemin d'accès complet menant au logiciel d'acquisition.
On configurera crontab de root pour exécuter
ce script toutes les 5 minutes:
*/5 * * * * /path_2_script/checkTemp.sh > /dev/null 2>&1
path_2_script devant être modifié pour le chemin d'accès où vous
avez placé le script.
Si tout va bien :-), une mesure de température sera faite toutes
toutes les 5 minutes et les fichiers suivants seront placés dans le répertoire du serveur Web:
tempDaily.png relevés d'une journée.
tempWeekly.png relevés d'une semaine.
tempMonthly.png relevés sur 28 jours.
temp2Monthly.png relevés sur 60 jours (-60j - 0j).
temp3Monthly.png relevés sur 60 jours (-120j - 60j).
temp4Monthly.png relevés sur 60 jours (-180j - 120j).
tempYearly.png relevés sur une année (maxima et minima journalier).
lasttemp.txt valeur de la dernière température mesurée.
lastdate.txt date et l'heure de la dernière mesure.
Une fois ces fichiers créés la première fois, on y appliquera les mêmes droits et
owner/group/world que les autres fichiers html de votre serveur
(généralement 644).
Pour afficher vos graphiques, il restera à créer des pages html
avec les images aux endroits voulus, par exemple:
‹img src="tempDaily.png"› pour placer le relevé journalier.
Pour utiliser les fichiers texte, le serveur Web devra être configuré avec
SSI (Server Side Include) et l'extension changée en shtml.
Par exemple, la date et la dernière température mesurée sera inclue sur la page à l'endroit voulu
avec les instructions suivantes:
‹!--#include virtual="lastdate.txt" --›
‹!--#include virtual="lasttemp.txt" --›
Ce qui nous donnera quelque chose du genre:
Fri Aug 27 17:55:06 CEST 2004 - Température: 25.81 ° Celsius
Vous pouvez très facilement modifier le script pour changer tous les paramètres des graphiques. Pour cela,
bien entendu, vous aurez lu en détail le mode d'emploi de
RRDTool.