Ce soir j’ai voulu regénérer tous les logs d’un site sur lesquels ça n’avait pas bien fonctionné au quotidien.
J’utilise Webalizer qui fait d’habitude pas trop ma son boulot.
Seulement là, j’avais logrotate qui était passé par là et qui l’avait découpé mes logs, compresés, …
Mais j’ai trouvé une astuce pour tout reprendre.
D’abord, on vide le dossier des stats :
# rm /www/mon_site/stats/*
Puis on relance webalizer à la main :
# for i in $(ls -tr /var/log/apache2/mon_site.access.*); do sudo /usr/bin/webalizer -c /etc/webalizer/mon_site.conf $i; done
L’idée c’est que l’option “-t” pour “ls” va permettre de trier les fichiers par date, et l’option “-r” va trier à l’envers. Ces 2 options sont nécessaires car sinon au premier passage, la boucle fait calculer les logs du jour à webalizer et il ignore ensuite tous les autres, alors il faut les lui donner par ordre croissant de date et là ça marche nickel

29 juin 2009 à 02:13 |
agh, ce post a sauvé ma journée. J’étais parti sur un script identique, sauf que que je n’avais pas mis l’option qui change tout : -tr
merci.