Compilation de logs Apache

Situation
Je viens de tomber sur un petit souci de logs Apache avec AwStats.
Pour je ne sais quelle raison (si, je le sais, mais ce n’est pas le sujet), AwStats ne prenait pas en compte mes logs Apache. Je n’ai pas eu le temps de traiter le problème immédiatement, j’ai donc pas mal de rotation de logs à réinjecter dans AwStats.
Seulement, AwStats est assez "capricieux", il ne veut manger les logs Apache que trier par dates croissantes... Il faut donc lui donner les logs un par un, depuis le premier fichier jusqu’au dernier. Fastidieux...

Théorie
Avec AwStats, est livré un "petit" script Perl qui va grandement nous faciliter la tâche : "logresolvemerge.pl"
Ce fichier prend les logs en arguments, et les fusionne en sortie standard (stdout).

Pratique

- On va rendre exécutable le fichier (je suppose que vous êtes sur une debian, avec le package AwStats installé).

chmod +x /usr/share/doc/awstats/examples/logresolvemerge.pl ln -s /usr/share/doc/awstats/examples/logresolvemerge.pl /usr/local/bin

- On dézippe les logs

cd /var/log/apache2/ gunzip *log.[0-9]*.gz

- On merge les logs ensemble dans un nouveau fichier

logresolvemerge.pl -dnslookup jlepage.info-access.log.[0-9]* > jlepage.info-merged.log

- Je conseille de rézipper les logs de rotation inutilisés

gzip jlepage.info-*.log.[2-9]* gzip jlepage.info-*.log.1[0-9]*

- Il ne reste plus qu’à redonner le nouveau fichier de log à manger à AwStats.

Et voilà :)