Traitement de logs apache vers fichier CSV
Bonjour,
Je suis issu du dev web et je débute en shell. J'aimerai créer un script Perl qui sera éxécuter avec un cron et qui fera le travail suivant:
Parser un fichier de log apache:
Code:
1 2 3 4 5
| ::1 - - [21/Apr/2009:09:38:52 +0200] "GET /.gif&utilisation=1&acces=1@stats=2 HTTP/1.1" 200 - "-" "Bla CFNetwork/422.11 Darwin/9.6.3 (i386) (iMac9%2C1)"
::1 - - [21/Apr/2009:09:38:53 +0200] "GET /.gif&utilisation=1&acces=1@stats=3 HTTP/1.1" 200 - "-" "Bla CFNetwork/422.11 Darwin/9.6.3 (i386) (iMac9%2C1)"
::1 - - [21/Apr/2009:09:38:57 +0200] "GET /.gif&utilisation=1&acces=2@carotte=2 HTTP/1.1" 200 - "-" "Bla CFNetwork/422.11 Darwin/9.6.3 (i386) (iMac9%2C1)"
::1 - - [21/Apr/2009:09:38:59 +0200] "GET /.gif&utilisation=1&acces=1@patate=8 HTTP/1.1" 200 - "-" "Bla CFNetwork/422.11 Darwin/9.6.3 (i386) (iMac9%2C1)"
:1 - - [21/Apr/2009:09:38:59 +0200] "GET /.gif&utilisation=1&acces=1@patate=8 HTTP/1.1" 200 - "-" "Bla CFNetwork/422.11 Darwin/9.6.3 (i386) (iMac9%2C1)" |
Afin de créer un nouveau fichier CSV qui affichera mes logs de la sorte:
Code:
1 2 3 4 5 6 7 8
| # ----------------------------------------
# Table
# ----------------------------------------
/.gif&utilisation=1&acces=1@stats=2, 1
/.gif&utilisation=1&acces=1@stats=3, 1
/.gif&utilisation=1&acces=2@carotte=2, 1
/.gif&utilisation=1&acces=1@patate=8, 2
# -------------------------------------------------------------------------------- |
Il faudrait donc que j'écrive dans ce nouveau CSV en regroupant les lignes identiques et en indiquant leur nombre par le compteur (en gras sur l'exemple)
Dur dur... pouvez-vous m'aider? merci d'avance
merci d'avance