La grenouille sur Internet en environnement Windows.

 

Introduction et objectif :

 

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é).

 

 

 

 

Les logiciels nécessaires:

 

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 pour Windows:

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.

RRDTool pour Windows  :

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.

 

PERL pour Windows :

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)

PureFrog pour Windows :

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.

 

 

 

 

 

 

 

Amélioration à apporter :

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.

 

 

 

 

 

 

Installation des logiciels :

Récupérez les logiciels.

 

 

Nos répertoires de travail:

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

 

 

 

 

Pureforg:

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).

 

Cron et son batch.

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).

 

 

 

 

RRDTools, sa mise à jour et les graphiques.

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.

 

 

 

 

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.

 

 

 

 

 

Cinématique de l'intégration des logiciels:

 

 

 

 

 

 

Normalement, tout doit marcher.

 

N'hésitez pas à me remonter les anomalies dans la procédure.

 

Xavier Vidal : prn@rocketmail.com