J'ai
décidé de rédiger ce document ainsi que le package de logiciel qui l'accompagne
pour permettre aux utilisateurs de la grenouille en environnement Windows de
produire sur Internet des graphiques identiques à ceux réalisés sous Linux.
La
procédure peut paraître globalement semblable, mais la réalisation étant
fonction de l'environnement, celle-ci diffère sensiblement. Les raisons sont
simples:
-
Le Shell Windows (cmd) est
largement plus pauvre que celui d'Unix et diffère syntaxiquement.
-
Les scripts PERL ont des spécificités syntaxiques.
-
Il n'existe pas nativement sous Windows d'ordonnanceur comme CRON.
Fort
de ces constatations, nous vous proposons la solution suivante permettant de
produire un site Internet comme suit:
Vous
pouvez voir ce site en fonctionnement "live" à l'adresse suivante :
http://prn.dyndns.org/meteo/ (si mon serveur est allumé).
J'ai
regroupé dans le package un ensemble de scripts permettant de configurer les
logiciels nécessaires au fonctionnement.
Vous
devrez charger ces logiciels aux adresses indiquées:
Crons est une
implémentation du démon Cron Unix sous Windows. Nous
utiliserons ce logiciel en tant que service pour ses fonctions d'ordonnanceur, qui, toutes les 5 minutes, lancera le batch
de mise à jour. Logiciel disponible sur http://www.kalab.com/freeware/,
installation en français détaillé sur la page perso.wanadoo.fr/zedix/cron_win.htm
Il ne vous est pas forcement nécessaire de
récupérer ce logiciel car je l'ai inclus dans mon package.
Ce
logiciel gère une base "round robin", c'est à dire cumulative, et
génère des graphiques superbes.
Il ressemble beaucoup à MRTG mais est beaucoup plus puissant. Il est
disponible sur http://ee-staff.ethz.ch/~oetiker/webtools/rrdtool/.
Il ne vous est pas forcement nécessaire de
récupérer ce logiciel car je l'ai inclus dans mon package.
Ce
logiciel nous permettra d'extraire les derniers relevés de température,
pression et hygrométrie générés par Purefrog, et
d'alimenter RRDTools.
Récupérez la version Windows à l'adresse suivante : http://www.activestate.com/Products/Download/Register.plex?id=ActivePerl
Installez
perl dans son répertoire par défaut (c:\perl)
L'équivalent
du démon FrogD sur Linux. Il ne fonctionne pas en
tant que service, et devra donc être lancé à la connexion. Il récupère de la
grenouille les relevés de pression, température et hygrométrie, et inscrit les
valeurs dans un fichier de log.
http://www.purebasic.com/download.php3
Il ne vous est pas forcement nécessaire de
récupérer ce logiciel car je l'ai inclus dans mon package.
Purefrog en service.
Plus
de script cmd, entièrement remplacé par un script perl.
Tout
gérer par un programme qui se réveille toute les 5 minutes (plus besoin de Cron).
Une
implémentation Java.
Récupérez
les logiciels.
Nous
travaillerons dans le répertoire \Progra~1\FroggyHome\ajout.
Notre
serveur Web est paramètré pour gérer les fichiers
dans le répertoire C:\Progra~1\Apache~1\Apache2\htdocs\meteo
Si
vous désirez un autre répertoire, pas de problème mais alors, modifiez les
scripts.
Décompressez
mon package dans le répertoire \Progra~1\FroggyHome\ajout
Lancez
purefrog.exe et paramètrez votre port série ainsi que votre altitude (et un
rafraîchissement de 5 min).
Copiez
un raccourci vers Purefrog dans le répertoire de
démarrage automatique (demarrer/programmes/demarrage)
Vérifiez
que tout fonctionne bien grâce à l'écran de Puregrog.
Bien
entendu, pure frog ne fonctionnera pas si vous avez
lancé froggyhome (il faut l'arrêter et l'enlever du
répertoire de démarrage automatique).
Nous utiliserons ce logiciel en tant que service pour ses fonctions d'ordonnanceur, qui, toutes les 5 minutes, actualisera les graphiques.
Copiez
dans le répertoire system32 de Windows le fichier Crontab
Ce
fichier est un fichier paramètre qui indique au service Cron
ce qu'il doit effectuer et à quelle périodicité (éditer le fichier, il se
comprend tout seul).
Copiez
dans le répertoire system32 de Windows le fichier frogupdt.cmd
Crons lance "frogupdt.cmd" qui lui-même
lance le script perl d'alimentation de RRDTools
(rrd-update.pl) puis commandera le rafraîchissement des graphiques (grafic.cmd).
Installez
le service Crons (en lancant
l'exe ntsetup.exe).
Initialisation
: Lancez rrd-create.bat. Ce script permet de
créer/initialiser une base de données rrd dans C:\Progra~1\FroggyHome\ajout\RRD\frogd.rrd
Attention, si
vous relancez une autre fois ce script, la base sera réinitialisée et toutes
les données perdues.
Les
2 scripts lancés par l'ordonnanceur sont dans le
répertoire C:\Progra~1\FroggyHome\ajout\RRD\
Il
s'agit de :
rrd-update.pl
Ce
script Perl spécifique à Windows permet de mettre à jour la base Round Robin de
RRDTools.
grafic.cmd
Ce
script Windows permet de générer les graphiques avec RRDTools et de les mettre
dans le répertoire du serveur Web.
Copiez
dans le répertoire du serveur Web les pages HTML contenues dans le répertoire /serveurWeb de mon package.
Normalement,
tout doit marcher.
N'hésitez
pas à me remonter les anomalies dans la procédure.
Xavier
Vidal : prn@rocketmail.com