Il peut être très utile de vérifier l’état d’une application à intervalles réguliers : mon serveur de streaming est-il opérationnel, mon tunnel ssh est- il encore ouvert ?… Mais comment faire quand le service en question ne propose pas de moyen “natif” de vérifier ces infos ?
Pour ma part j’utilise un simple script bash et [man]crontab[/man]
pour la
planification. Dans l’exemple je vais vérifier que mon serveur de streaming
fonctionne bien, soit quand vlc n’inscrit pas “video server down” dans son log
(exemple tout à fait fictif) :
1 2 3 4 5 6 7 |
|
Ce script vérifie donc l’état du service en fonction du fichier journal. Si il détecte une erreur il peut (par exemple) redémarrer le service. Les possibilités sont quasi infinies (envoie de mail, connexion à un autre serveur…), la seule limitation est la capacité du service à créer un log suffisamment détaillé.
Pour le planifier, utilisez [man]crontab[/man] -e
avec une ligne dans ce
style :
*/1 * * * * /home/tym/scripts/check_vlc
Si vous voulez vérifier à un intervalle inférieur à 1 minute vous pouver modifier le script comme suit (et ne plus utiliser cron) :
1 2 3 4 5 6 7 8 9 10 |
|
Bon monitoring ;-)