Voici un tout petit programme de moins de 20 lignes permettant très simplement de surveiller un serveur grâce aux protocoles Jabber.
Il suffit de créer un compte Jabber spécifique pour le serveur à surveiller, et de l'ajouter dans votre liste de contacts, celui-ci apparaitra avec pour status la charge du système, pratique ! non ?
En prérequi, il vous faut juste le gem xmpp4r-simple, installez le comme ceci :
sudo gem install xmpp4r-simple
Le code est très facilement étendable selon vos besoins, je vous laisse faire...
require 'xmpp4r-simple'
LOGIN='le_compte_du_serveur@im.apinc.org'
PASS='lepass'
DEST='votre_compte_perso@im.apinc.org'
begin
$im = Jabber::Simple.new(LOGIN, PASS)
$im.deliver(DEST, "Hello !")
loop do
$im.status(nil, `hostname`.strip + ' : ' + `cat /proc/loadavg`.split.first(3).join(' '))
sleep 30
end
rescue => e
p e; sleep 10
retry
end
Lancez maintenant le script :
ruby jabber.rb
Voilà un petit aperçu du résultat dans Pidgin :
La gestion des transports, l’une des principales compétences de la Région, sera au cœur de la campagne des prochaines élections Régionales. Gaston Franco, qui conduira la liste UMP dans les Alpes-Maritimes, entend bien mettre en évidence les erreurs de casting de la majorité actuelle du Conseil Régional, mais aussi fustiger son attentisme et son refus d’intégrer le rail dans le système du ticket à 1 euro.
Ecrit le mercredi 20 janvier 2010
Paris, 11h20
Suite au chantage permanent à la rentabilité économique ou les prétendues obligations européennes, la fédération de cheminots Sud-Rail se joindra à la CGT en faveur d'un appel à la grève nationale le 3 février à la SNCF.
2 Vote(s)
Le gestionnaire de projet technique basé sur l'infrastructure Ruby on Rail se caractérise par des fonctionnalités de gestion multiprojet. Tutoriel/Pratique