Comment mesurer l'impact de votre site Web ?
Mis à jour le 15 août 2007
Vous venez d'achever votre site Web avec beaucoup d'effort afin de le
rendre le plus attrayant possible.
Maintenant qu'il est online, vous aimeriez bien connaitre si tout cela
a vraiment servi à quelque chose et si les netsurfeurs se délectent de votre oeuvre.
Pour cela, il convient de mesurer exactement le traffic issu
de votre site, il s'agit donc d'effectuer des statistiques de consultation.
De nombreux outils sont désormais disponibles variant du plus
simple jusqu'aux produits commerciaux très onéreux. Il existe plusieurs
manières plus ou moins complexes d'analyser le trafic d'un site
Web.
La solution la plus simple est d'utiliser les services d'un site
externe comme Google Analytics ou Xiti. Mais il faut modifier ses
pages web pour y inclure un code qui effectuera une connection sur le
serveur distant. Outre que cela ralentit l'affichage des pages (qui
dépend de la charge du serveur distant), il n'est pas
envisageable d'étendre cette méthode à tout son
site Web. Néanmoins, cette méthode a l'avantage
d'être très précise. Certains logiciels de stats
ont
d'ailleurs opté pour cette solution.
La méthode la plus complète consiste cependant à lire les fichiers de log crées
par le serveur Web. En effet, lors de chaque requête d'un visiteur, le
serveur ne se contente pas seulement d'envoyer le fichier demandé mais
stocke aussi certaines informations dans son fichier de log. La
plupart des providers fournissent ces fichiers de log.
[tableau comparatif entre les fichiers de log et les tags]
|
Avantages |
Inconvénients |
Tags |
- Simple
- Ne nécessite pas de calcul local
|
- Limité à qques pages
- Pas de controle fin
|
Fichier de log |
- Pas de dépendance d'un service externe
- Controle totale des stats
|
- Consomme du CPU
- Nécessite un acces aux log de votre serveur
|
Les formats utlisés
Ainsi la date de consultation, le nom du fichier, la taille du fichier, le
nom de la machine sont en autres enregistrés par le serveur. Le format
de ce fichier de log diffère suivant les serveurs utilisés mais le
plus courant est le CLF (Common Logfile Format) comme son nom l'indique.
A noter que Microsoft utilise son propre format bien évidemment non
compatible avec le CLF !
Des variantes sont apparues au fur et à mesure que les besoins se
faisaient sentir, ainsi successivement le ECLF (E pour Extended) qui
contient des informations supplémentaires sur le navigateur utilisé ainsi
que le système d'exploitation de la machine appelante, puis le
NECLF (N pour New) avec encore davantage d'informations. Le format le
plus courant est desormais le ECLF, l'origine des connections
étant une information essentielle.
[tableau des différents types de format usités]
NECLF |
www.lyot.obspm.fr - - [01/Jan/97:23:12:24 +0000] (www.obspm.fr) "GET /~domisse/w3perl/docs/html/index.html HTTP/1.0" 200 1220 "http://www.lyot.obspm.fr/~domisse/" "Mozilla/4.01 (X11; I; SunOS 5.3 sun4m)"
|
ECLF |
www.lyot.obspm.fr - - [01/Jan/97:23:12:24 +0000] "GET /~domisse/w3perl/docs/html/index.html HTTP/1.0" 200 1220 "http://www.lyot.obspm.fr/~domisse/" "Mozilla/4.01 (X11; I; SunOS 5.3 sun4m)"
|
CLF |
www.lyot.obspm.fr - - [01/Jan/97:23:12:24 +0000] "GET /~domisse/w3perl/docs/html/index.html HTTP/1.0" 200 1220
|
IIS 3.0 |
129.142.90.150, -, 5/5/97, 14:33:27, W3SVC, RHINO, 194.182.141.6, 2601, 207, 1272, 200, 0, GET, /frabout.htm, -,
|
IIS 4.0 |
1998-01-06 19:05:37 193.149.100.108 - GET /images/ap.gif - 304 122 362 651 Mozilla/4.0+(compatible;+MSIE+4.0;+Windows+95) http://www.defle.montaigne.u-bordeaux.fr/
|
Pour le CLF, on trouve successivement le nom de la machine appelante, la date
de la requête, la methode ainsi que la page appelee, le status de la requête
et finalement la taille du fichier envoyé.
On peut trouver une multitude d'outils différents dans leur
présentation, leur analyse ou ... leur vitesse d'analyse.
En effet, chacun peut à loisir écrire de tel logiciel de manière assez
simple car la difficulté n'est pas considérable.
On peut regrouper ces logiciels en trois parties :
- Les logiciels GPL/freeware de loin les plus abondants (sauf peut être sur
Windows) et ...les plus utilisés de par le monde.
- Les logiciels shareware proposant des possibilités plus évoluées ainsi
qu'un support.
- Les logiciels commerciaux très souvent onéreux et pas toujours à la hauteur
en comparaison avec les logiciels gartuits. Ils utilisent parfois
des techniques plus subtiles que le simple dépouillement d'un fichier de
log mais ceci au prix d'une infrastructure un peu plus complexe
à mettre en oeuvre. Mais les résultats sont d'autant plus précis.
Certains logiciels sont interconnectés à une base de
données, ce qui permet dans ce cas d'effectuer des recherches plus poussées en effectuant
des requêtes croisées. Nous nous bornerons pour le moment à des
logiciels plus simples qui sont essentiellement basés sur l'exploitation
d'un fichier de log issu d'un serveur Web.
L'unité de mesure :
Quelques définitions sont nécessaires avant d'aller plus loin.
Il y a peu, l'unité pour connaitre l'affluence sur un site Web
se mesurait en hits, un hit est une requête sur un fichier, quel
qu'il soit, une page HTML, une image, un script... Pour glonfler
artificiellement son site,
le moyen le plus économique n'était pas d'amener davantage de
visiteurs mais d'ajouter des images dans
chacune de vos pages. Ainsi une homepage avec 5 images fait donc
6 hits (5 images + la page HTML)...
Une unité de mesure bien plus précise consiste à ne compter que les
requêtes sur les pages HTML uniquement. Mais d'autres
problèmes surgissent....avec les frames. Une frame est un document
HTML qui contient d'autres documents HTML...ainsi une requête sur
une frame aboutit en fait à plusieurs requêtes, autant que le
nombre de pages HTML appelées par cette frame. De là à multiplier
les frames ... Ceci dit, avec l'apparition des CSS, les sites en
frames sont de moins en moins nombreux !
les proxy faussent tout ...
Un autre problème provient de l'usage des proxy. Un proxy est de manière
simplifié un gigantesque cache où le serveur stocke les fichiers appelés.
La première fois que vous appelez une page sur le réseau, votre proxy
situé en amont de votre machine effectue en fait la requête pour vous
et vous renvoie le fichier de manière transparente, et au passage stocke
cette page sur son disque. Si vous rappelez cette page, le proxy va en
premier lieu regarder si cette page existe dans son cache et si elle est
récente. Si certaines conditions sont remplies, il vous renvoie
directement la page, mais il peut aussi effectuer une requête au serveur
distant pour juste lui demander si la page qu'il a dans son cache n'est pas
trop obsolète. Si celle-ci a effectivement changé sur le serveur distant,
votre proxy va la récupérer de nouveau et la stocker. Mais le proxy
peut être configuré de telle sorte que si la deuxième requête est effectuée
dans un temps inférieur à une valeur donnée, il ne cherche même pas
à savoir si la page distante a changé ou pas. On sous-estime ainsi
le nombre de requête à son serveur puisque certaines pages de votre
site se trouvent sur différents proxy à travers le monde (chaque
provider utilise son propre proxy pour alléger sa bande passante).
Un moyen de contrer les proxy est d'utiliser des applets java qui ne
peuvent pas être stockées sur le proxy.
Quelles sont les informations disponibles ?
Les statistiques seront bien sur dépendantes du format du fichier de log
utilisé. Un bon logiciel sera capable d'extraire les informations quel
que soit ce format.
Toutes les informations contenues dans ce fichier de log peuvent
être combinées de manière différente afin de mettre en valeur tel
ou tel paramétre de votre site. Les formats de visualisation peuvent
donc être très nombreux et diffèrent d'un logiciel à un autre.
Le CLF (ou le format utilisé par IIS 3.0) permet déjà d'extraire de
nombreuses informations intéressantes :
- Date : il est possible de suivre heure par heure, jour après
jour, semaine après semaine ou mois après mois, l'évolution de la
fréquentation de son site. Ces informations sont évidemment cruciales
pour juger de l'indice de satisfaction des visiteurs. Un bon site
émerge souvent assez rapidement du flot de données et sitôt le site
bookmarké auprès des sites 'de référence', le nombre de consultation
ne peut qu'augmenter. A noter que vu le nombre croissant de personnes
ayant accès au Net, un site présentant un plateau dans le temps
représente plutot une baisse de consultation.
Certains softs vous donneront des résumés toutes les semaines, d'autres tous
les mois. Des graphes permettront une lecture plus agréable du nombre
de hits, du nombre de pages HTML lues, du trafic utilisé, du nombre de pays
...
- Pages : Mais quelles sont les pages les plus lues sur mon serveur ?
Elément clé de votre site, cette information vous permettra de connaitre
les goûts et les préférences de vos visiteurs. La plupart du temps, il
convient de faire abstraction de la homepage (index.html) qui est par
défaut la première page visualisée et donc le passage obligé pour tout
le monde. Un bon logiciel doit pouvoir être flexible et pouvoir
accepter d'autres fichiers que le html, par exemple, les pages en php,
en wml...
- Répertoires : Un site Web bien construit s'organise autour de plusieurs
fonctions dans des répertoires différents. Ainsi il est courant
de trouver à la base d'un serveur des répertoires /fr/ et /uk/ où sont
stockés respectivement tous les documents en langue française et anglaise.
On trouvera des sous répertoires internes qui pourront s'identifier à
des champs plus précis du serveur (ex : /acorn/ pour tout ce qui se
rattache à des pages sur le monde acorn, /astro/ pour l'astro...).
On voit donc qu'il devient possible d'établir des statistiques qui
permettront de déterminer quelles sont les rubriques les plus appréciées.
Pour chaque répertoire, il suffit de dénombrer les accès avec leur
pourcentage respectif, ainsi on pourra avoir le taux de visiteurs
utilisant la partie en anglais du serveur par rapport à celle utilisant la partie
en français.
- Pays : Une détermination géographique par pays des différents visiteurs est
possible grace à l'utilisation du dernier champ du nom de domaine qui
indique le pays d'origine.
Une répartition plus fine n'est pas malheureusement possible
sans disposer d'une base de données reliant chaque nom de domaine à sa
position géographique exacte. De telles bases existent
(geo::ip) et devront pouvoir être acceptées par le
logiciel de stats. Cependant il convient de mettre à jour régulierement cette base.
Les noms de domaines en .com posent également
problème car un .com peut exister sur n'importe quel continent. Il
existe aussi des 'pays' un peu particulier comme les .net, .org qui n'en sont
pas.
Si votre fichier de log ne contient pas explicitement le nom des
machines mais uniquement leur adresse IP, les statistiques
géographiques sont néanmoins possibles en utilisant une
option de reverse dns. Pour chaque IP, le logiciel doit pouvoir
effectuer une requête à un serveur DNS et résoudre
ainsi cette adresse. Un bon logiciel de stats doit pouvoir gérer
un cache en interne pour minimiser l'acces à ces serveurs DNS
qui ralentissent considérablement le calcul.
- Machines : Il est également intéressant de connaitre quelles sont les
machines qui consultent le plus votre site (hormis votre propre machine
bien sur !). On peut ainsi détecter les webhacker qui sont des logiciels
qui vous récupérent l'intégralité de votre site de manière complétement
automatique en suivant vos liens. Les robots peuvent aussi être vu de cette
manière (ce sont des arraignées qui référencent les pages parcourues dans
leur moteur de recherche associé). Dans le cas d'un Intranet, il vous
sera même possible de voir les personnes les plus assidues. A noter
qu'il est possible de connaitre le taux de fidélisation sur votre site en
analysant le nombre de machines nouvelles par rapport aux machines étant
déjà venues visiter votre site.
- Scripts : Vous disposez d'une base de données sur votre site et vous
aimeriez bien connaitre quels sont les choix les plus utilisés lors
de la consultation de votre base. Est ce que vos visiteurs recherchent
davantage les simca rouges ou des porsches vertes dans votre site
de petites annonces ? Certains logiciels proposent une telle analyse,
essentielle lorsque son site Web se résume à une base de données.
- Erreurs : Les statistiques sur les erreurs sont un peu particulières
dans le sens où ces informations sont stockées dans un fichier de log
à part et dans des formats souvent très différents d'une version à une
autre ! (A noter que sous IIS, ces informations ne sont pas
accessibles d'une manière simple car stockées dans une base de donnée).
Ces informations vous permettront de connaitre les
requêtes n'ayant pas abouti...des pages déplacées, une faute d'orthographe
dans le lien d'une page HTML, ou encore le nombre d'utilisateurs
n'ayant pas attendu la fin du chargement d'une page (trop lourde).
- Sessions : Il n'est pas possible théoriquement de suivre une personne sur
le Net car seul le nom de sa machine est stocké dans le fichier de log.
Un autre utilisateur utilisant la même machine (ou plutôt le même numéro IP)
sera confondu avec la première personne. Il n'y a pas de notion
de fin de session pour un serveur Web.
Néanmoins, il est possible de calculer
le nombre de visites en posant quelques hypothéses simples. La première
est de supposer qu'une personne ne passe pas plus de 30 minutes pour lire
une page HTML (ou soit elle lit très lentement, soit elle est parti
prendre un café entre temps). La deuxième hypothèse est de définir un temps
maximal pour une session ; on a rarement vu quelqu'un surfer sur le même
site Web pendant plus de 10 heures !
Une fois ces conditions posées, il suffit de vérifier après coup que
vos hypothèses sont effectivement verifiées. Cela permet d'obtenir
des profils très précis des passages de vos visiteurs, page après page
en connaissant même le temps parcouru pour chaque page. On peut suivre
ainsi le parcours d'un visiteur et examiner ainsi sa navigation au sein
de votre site. Le nombre de visiteurs devient donc accessible, le
nombre moyen de pages lues par visite, le temps moyen d'une visite....
Le format ECLF dispose d'informations supplémentaires quant au systeme
d'exploitation utilisé et au fureteur utilisé.
- Fureteur : Votre site contient des frames, du java, différents plugs in
mais êtes vous sur que tous vos visiteurs n'en souffrent pas ? Il vous
suffit de consulter la répartition des différents browsers utilisés sur
votre site pour le savoir. Si 5% des browsers sont des Netscape 3, à vous
de voir si vous êtes prêts à les sacrifier ou si une version spécifique
pour les vieux navigateurs est envisageable.
Enfin, quelles sont les plateformes utilisées ? Là, l'écrasante majorité
provient de Windows, témoignant de l'homogéinésation du marché des
micros.
- Références : Sans doute, une des informations les plus importantes
pour l'évolution de votre site. Examiner en détails si votre site
est correctement référencé sur la toile et établissez une véritable
politique de liens croisés avec d'autres sites. Par la suite, vérifiez
que votre politique porte ses fruits et calculez le flux provenant
de vos sites 'amis'. Vous pourrez ainsi voir si votre site est effectivement
présent sur les principaux moteurs de recherche. Une fonctionnalité plus
élaborée permet de connaitre les mots clés utilisés par les visiteurs
pour atteindre votre site à l'aide des moteurs de recherche. Ainsi vous
pourrez connaitre exactement quels sont les véritables besoins exprimés.
Il n'est pas rare de trouver des mots comme 'sexe' dans cette liste !
Le langage utilisé :
Là encore, trois catégories de langage sont utilisées :
- Le plus courant et de loin est le Perl qui a l'énorme avantage d'être
rapide à écrire, à maintenir et à développer. Son gros inconvénient est
sa relative lenteur à gérer de très gros volume de données.
- Les logiciels les plus rapides utilisent le C comme langage et sont
souvent utilisés dès que le temps CPU devient une contrainte importante dans l'exploitation d'un serveur Web.
- Enfin quelques outils existent en PHP qui présentent l'interêt de stocker leurs résultats dans une base de donnée.
Bonus :
Divers outils sont proposés sur certains logiciels qui vous permettent
d'obtenir des statistiques sur vos documents HTML. Le pourcentage
d'images, de liens, les liens erronés....
A noter cependant une fonctionnalité très agréable sur certains
logiciels qui permettent d'avoir un 'mapping' des fichiers, au lieu
d'avoir des pages référencées par des chemins sur votre disque, vous
obtenez le nom de cette page si celle-ci contient un titre au sein
du code HTML.
Installation :
La plupart des logiciels s'installent assez simplement. La plupart du
temps il suffit de paramétrer un fichier de configuration où sont
stockés le chemin à votre fichier de log, les tris à effectuer et autres
informations de filtrage. Ce fichier sera lu lors du lancement du programme et
permettra d'obtenir vos informations pertinentes.
Pour exécuter le programme, on préfèrera lorsque ceci est possible
de le lancer de manière automatique toutes les nuits pour éviter
une gêne au niveau des utilisateurs (les stats sont gourmandes en
mémoire et en temps CPU).
Certains logiciels proposent une interface d'administration pour
gérer vos fichiers de configuration ou même pour lancer les scripts
dans le cas ou vous n'auriez pas d'accès direct à ceux-ci (cas d'un
hébergement chez un provider où il est rare d'avoir une connexion telnet).
Certains n'ont même pas besoin d'utiliser de répertoire cgi-bin pour
s'exécuter.
Choix :
Il est souvent difficile de faire un choix parmi tous les logiciels
disponibles mais la plupart proposent une visualisation sur leur
propre site Web qui permet d'avoir une idée de leur 'look and feel'.
Le choix dépendra de vos goûts personnels, de la vitesse d'exécution
(prendre du C pour un site avec un gros trafic), de la facilité
d'installation et des différentes options auxquelles vous serez sensibles.
De manière générale, il est conseillé d'utiliser des logiciels tournant
de manière incrémentale, ceci afin de réduire au maximum le temps
de calcul. Si vos fichiers de logs sont compressés, le logiciel
devra gérer ce genre de chose, de même si votre provider coupe vos
fichiers de logs de manière régulière (pour augmenter l'espace
disque disponible).
Vous trouverez ci contre
les différents logiciels les plus pertinents à mon goût, libre à vous
d'en tester d'autres !..ou d'écrire le votre !
[tableau de différents logiciels de stats]
Conclusion :
Les statistiques ne dépendent pas seulement de la puissance de votre
outil d'analyse mais aussi de la manière dont vous avez organisé votre
site Web. Un site bien construit permettra plus facilement d'extraire
les informations sensibles. Le nombre d'outils disponibles est assez important et ne cesse de croitre.
L'analyse du flux de connexion de votre site Web ne vous permettra
pas seulement de connaitre l'impact de votre site sur le Net mais aussi
de déterminer une véritable politique de gestion de celui-ci et de
l'optimiser en fonction du parcours de vos visiteurs.
|