Traquer les erreurs de crawl rencontrées par GoogleBot
4 Juil 2012
écrit parOui, je suis encore dans ma phase d'analyse et de décorticage des fichiers logs, j'avoue! Mais c'est tellement passionnant...
Au delà de l'aspect traitement des logs afin de mieux comprendre le crawl de Googlebot sur un site pour optimiser le maillage interne et lui faciliter le crawl vers des pages profondes par exemple, je vais me pencher sur les différentes erreurs qu'il est susceptible de rencontrer en visitant un site, pour les corriger au plus vite!
Principe du script
On va traquer en temps réel les fichiers log d'Apache pour détecter toutes les pages d'erreurs 404 dans cet exemple. Cela peut venir de pages déjà indexées qui ont été supprimées et n'ont pas été redirigées (malheureux!) ou encore {d'internautes|de webmasters} qui ont fait un lien vers votre site avec un copier/coller raté.
A chaque status 404 trouvé par Googlebot, on va s'envoyer un email avec la ligne de log concernée pour mieux identifier la page incriminée. Attention, cet exemple va bien pour des petits sites uniquement (sur des gros sites vous risquez de recevoir 10 mails à la minute, je vous aurais prévenu!)
Script qui traque Googlebot
#!/bin/bash EMAIL="aymeric@mondomaine.com" SEARCH=' 404 ' CORPS="/home/aymeric/alerte.txt" LOGFILE=/var/log/apache2/access_ypdq.log SUJET="** GoogleBot a renconte un probleme **" tail -f $LOGFILE | while read LINE do if [ `echo $LINE | grep "Googlebot" | grep -c "$SEARCH"` -gt 0 ] then echo "Googleboot a rencontre l'erreur suivante:\n" > $CORPS echo $LINE >> $CORPS echo "\nsur le serveur" `hostname` "--> remettez le sur le droit chemin!" >> $CORPS mail -s "$SUJET" "$EMAIL" < $CORPS fi done
N'oubliez pas de changer les variables suivantes:
- $EMAIL : votre email
- $CORPS : le chemin vers votre /home/votreusername/alerte.txt (pour le contenu du mail à envoyer)
- $SEARCH : l'erreur à rechercher
- $LOGFILE : le chemin de votre fichier log
Et après?
Vous n'avez plus qu'à mettre ce script au démarrage de votre serveur. Vous pouvez bien évidemment traquer tout un tas d'autres choses, libre recours à votre imagination 😉
PS: Au fait, je ne sais toujours pas qui est Gasy.
écrit dans Serveurs web - Apache Varnish par |