Une des utilisations phare du Yocto-Temperature est la surveillance de température dans les salles serveurs. De nombreux clients nous ont demandé s'il existait une application utilisant nos modules sous Windows capable d'envoyer des mails d'alerte en cas d'élévation de température. Au point qu'on a décidé de vous en faire une, juste comme ça, par pure gentillesse :-)
Le fait est que le Yocto-Temperature est idéal pour cette tâche: il fonctionne par USB, ne nécessite pas de driver, et il est minuscule. Si en plus on s'offre le luxe de le placer dans le boîtier approprié, les aimants dudit boîtier permettent de le fixer sur un rack serveur en moins de temps qu'il n'en faut pour le dire.
Grâce aux aimants du boîtier, les modules Yoctopuce peuvent être collés à un rack serveur.
L'idée de cette semaine est donc de fournir l'application minimale, mais néanmoins utilisable en production, qui permette de surveiller la température mesurée par un Yocto-Temperature. Cette application enverra un mail d'alerte quand la température dépassera un certain seuil. Pour être sûr qu'elle fonctionne en permanence cette application est fournie sous la forme d'un service Windows.
Ceci pose le problème de la configuration: en effet, un service Windows n'a pas d'interface. C'est pourquoi on a aussi créé une seconde application Windows qui permet de configurer le service, c'est-à-dire spécifier quand et à qui envoyer un mail d'alerte.
La solution proposée est basée sur un service Windows
Pré-requis
Cette application est écrite en C# .NET, vous devrez donc avoir le Microsoft .NET framework 4 installé sur votre machine pour qu'elle fonctionne.
Installation
Il n'y a pas d'installeur. Vous avez besoin des fichiers ThermalControlSvc.exe, ThermalControlSvc.exe.config, yapi.dll et ThermalControlCfg.exe. Placez-les dans le répertoire de votre choix, et depuis ce répertoire, lancez la ligne de commande suivante:
ThermalControlSvc.exe /INSTALL
Cela a pour effet d'installer et de lancer le service Windows Thermal control. Il vous faut ensuite le configurer.
Configuration
Lancez l'application ThermalControlCfg.exe. Cette application se connecte au service Thermal control et affiche la température mesurée vous permettant ainsi de vérifier que vous avez bien pensé à connecter un Yocto-Temperature à votre machine :-).
La configuration se fait sous l'onglet "Configuration". Vous devrez entrez les coordonnées nécessaires pour se connecter au serveur mail d'où vous désirez faire partir les emails d'alerte. Vous devrez aussi spécifier l'adresse mail de la personne qui doit recevoir ces mails, et le seuil de température à partir duquel le service doit commencer à envoyer des alertes. Si vous le souhaitez il y a aussi la possibilité de customiser le contenu du mail d'alerte.
L'interface de configuration
Fonctionnement
Le fonctionnement du service est des plus simple: dès que la température mesurée dépasse le seuil défini plus 0.5°C le service va passer en mode alerte. Si la température repasse en dessous du seuil moins 0.5°C, le service quitte le mode alerte. En mode alerte, le service envoie un mail d'alerte toutes les quatre heures.
Désinstallation
Pour désinstaller le tout, lancez la commande suivante:
ThermalControlSvc.exe /UNINSTALL
et effacez les fichiers.
Bonus
Vous pouvez stopper le service ThermalControlSvc.exe avec la commande:
ThermalControlSvc.exe /STOP
Et le relancer avec la commande:
ThermalControlSvc.exe /START
Si vous donnez un nom logique à votre module, celui-ci sera utilisé à la place du numéro de série dans le mail d'alerte, utile si vous avez plusieurs salles à surveiller.
Il est aussi possible de faire tourner ThermalControlSvc.exe en mode "debug" sans qu'il soit nécessaire de l'installer en service: il suffit lancer la commande suivante:
ThermalControlSvc.exe /RUN
Attention, en mode "debug", les réglages, qui sont stockés dans la base de registres Windows, ne sont pas sauvegardés au même endroit. Vous devrez refaire la configuration si vous lancez l'application en service.
En fait, l'application fonctionne avec n'importe quel module Yoctopuce équipé d'un capteur de température, elle est prévue pour monitorer un Yocto-Temperature, mais elle marchera tout aussi bien avec un Yocto-Meteo.
Téléchargement
Vous pouvez télécharger l'application avec les sources en C# depuis ici. Évidement, cette application est fournie en l'état, sans garantie d'aucune sorte. Mais que cela nous empêche pas de contacter le support Yoctopuce si vous éprouvez des difficultés à la faire fonctionner.