surveiller ses sites

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,

C'est une question qui n'a peut-être pas de réponse directement Drupal, mais sait-on jamais ?

Je m'occupe de plusieurs sites internet, presque tous sur Drupal maintenant, et de temps en temps il y a des incidents (serveur indisponibles ou autre). Je ne pense pas à regarder tous les sites en permanence, mais j'aimerais avoir des alertes, si par exemple la page principale, ou des pages cruciales du site ne sont pas accessibles.

Quelle stratégie utilise-t-on pour faire ça habituellement ? Y a-t-il une solution Drupal pour faire ça ?

Version de Drupal : 

Ce que tu cherches s'appelle une solution de monitoring. Visiblement il n'existe pas de module pour cela : http://groups.drupal.org/node/52708
Dans la boîte, on utilise un outil externe: http://site24x7.com/. L'avantage par rapport à un outil interne c'est que tu peux faire des tests de monitoring aux 4 coins du globe.

Il doit certainement y avoir des solutions plus simples et moins chères voire opensource... Tout dépend ensuite de quel degré de monitoring tu veux et de la qualité du reporting.

Oui nagios est open-source (mais avec un contrôle fort de son créateur), mais il existe plein d'autres solutions plus rapides à prendre en main : zabbix, zenoss. Je citais monit dans un post précédent. Il y a aussi munin pour du monitoring / historique.

Quelques liens :

Ces outils permettent (avec ou sans agent) de surveiller l'état de la machine (CPU, RAM, disque) mais aussi de services tels que tester des pages web, y compris chercher un mot clé dans la page. et ils avertissent par mail en cas de problème ; on peut aussi relancer un processus qui s'est terminé.

Ces solutions s'installent essentiellement sur des serveurs Linux, mais il faut avoir un accès root -> ça ne s'installe pas sur un serveur en hébergement mutualisé apache/php/mysql.

Il y a un site dédié au monitoring, en français : http://www.monitoring-fr.org/

Bonjour,

le monitoring à distance est possible ; tu peux tester des ping ICMP ou des requêtes http (et même analyser le contenu de la page en retour).

Il faut dans ce cas partir sur une solution sans agent.

Monit peut faire ça, zabbix aussi, tout dépend du temps et de l'effort que tu veux y consacrer.

Avec Zabbix tu auras une console graphique (http://www.zabbix.com/documentation/1.8/manual/web_monitoring).

Monit fait juste de la surveillance, sans une "belle" console graphique (il y a quand même une IHM web).

Nagios peut aussi surveiller des services sans problème (cf http://nagiosplugins.org/man/check_http, qui tourne sous Drupal d'ailleurs).

Le choix est large

merci de vos réponses,

en parallèle j'ai regardé ce qui se faisait en solution on line, j'ai trouvé deux sites gratuits pour une vérification une fois par heure (et payant quand c'est plus souvent)(www.siteuptime.com www.internetseer.com), il doit y en avoir d'autres. Quelqu'un les connait ?

Ces sites semblent vérifier si les pages ont été modifiée ou contiennent des mots clés à déterminer d'après ce que j'ai compris. Par contre je me demandais s'il est possible de tester le fait si Drupal est toujours fonctionnel: peut-être en faisant envoyer une requete à intervalle régulier à un autre serveur avec les modules adhoc, mais comment alors faire pour détecter l'interruption de l'envoi des requetes ?

Pour du monitoring simple, il existe Monit (http://mmonit.com/monit/) qui permet de surveiller des processus mais aussi des URL, et de prévenir par mail en cas d'alerte

Par exemple on peut monitorer une page sur un serveur :

   if failed host www.drupal.example.com 80
        protocol HTTP request "/user/login" then restart

Voir les exemples du wiki : http://mmonit.com/wiki/Monit/ConfigurationExamples ou encore http://gorgonite.developpez.com/tutoriels/linux/monit/

Par contre ceci demande d'avoir un accès système à la machine, ou une machine sur laquelle installer monit.