# Surveillance (informatique)

Le monitoring ou monitorage est une activité de surveillance et de mesure d'une activité informatique. On l'emploie pour permettre la supervision.
Les raisons peuvent être variées :
* mesure de performance, en termes de temps de réponse par exemple ;
* mesure de disponibilité, indépendamment des performances ;
* mesure d'intégrité, l'état des processus sur une machine Unix par exemple, ou bien qu'une page web n'a pas été modifiée (sécurité informatique) ;
* mesure de changement, surveillance de sites de News avec Google Actualités.

## Domaines de surveillance

On peut surveiller :
* l'état physique d'une machine : température, disques (S.M.A.R.T. )
* la charge d'une machine : nombre d'utilisateurs, de requêtes, le processeur, débit réseau…
* disponibilité applicative : présence de processus et leur réponse par exemple
* les messages inscrits en logs systèmes (Event-Viewer) concernant une application ou un composant système
* les performances du réseau : débit, latence, taux d'erreur, QoS…
* la nature des protocoles d'un réseau et leur taux relatif : UDP, TCP, ICMP, idem pour la couche 4…
* les attaques connues sur un Pare-feu par exemple
* les réponses protocolaires (simulation partielle d'une session)
* les modifications, suivant le but de la surveillance et dans certains cas, sont souhaitables ou au contraire signalent une anomalie.
* la qualité du travail lors de montage audio/vidéo sur des périphériques professionnels.

## Type de résultats

Les mesures donnent des résultats :
* booléen : oui ou non ceci est disponible ?
* numériques : quel est son temps de réponse ?
* qualitatif : quand j'effectue telle requête, j'obtiens une erreur 404, ou voila les dernières nouvelles
Ces types de réponses permettent certains traitements, par exemple, il est naturel de grapher des résultats numériques. Les traitements statistiques seront aussi différents suivant les types de valeurs. La présentation des résultats peut être très différente, cela va d'un graphe à la présentation de pages web qui ont été modifiées.

## Actions liées

Le monitoring permet donc de faire des mesures, qui sont alors utilisées pour :
* Construire des graphes (avec RRDTool ou Graphite par exemple), afin de visualiser les performances et de voir les tendances ;
* Alerter les administrateurs d'un dysfonctionnement, ceci par interface « temps réel », courrier électronique, SMS, PUSH, etc.
* Exécuter des actions programmées comme redémarrer un service ou alors couper le réseau en cas d'attaque comme dans le cas des IPS.

## Modes de surveillance

La surveillance peut s'opérer :
* soit par un logiciel dédié, installé sur la/les machines à surveiller (solutions type MRTG)
* soit par une solution externe en mode ASP (Application Service Provider, signifiant fournisseur d'applications en ligne) via Internet (solutions type ServeurMonitor ou WebLiveAlert)

## Aspects particuliers

* Un domaine particulièrement développé est le Monitoring de site web.
* La surveillance de serveur peut également s'accompagner de fonctions d'inventaire de parc pour disposer d'informations sur tous les postes de travail connectés au même réseau

## Logiciels de surveillance

* Cacti
* Centreon
* Check_MK
* Datadog$^,$$^,$
* Ganglia
* Evidian OpenMaster de Bull
* Eyesofnetwork
* Icinga
* Monit
* Nagios
* NetCrunch 5
* Multi Router Traffic Grapher
* Munin
* Prometheus
* PRTG
* RRDTool
* Shinken
* Snort
* Splunk
* Vigilo
* Xymon (anciennement Hobbit ou Big Brother)
* Zabbix