Awstats chez One and one: de vrais stats PART 2
Par ulysse, vendredi 6 octobre 2006 à 20:19 :: 1and1 linux stats:: #34 :: rss

Comme promis aprés un délai indéfini et donc respecté dans le billet Awstats chez One and one: de vrais stats PART 1, voici la suite. Tadaamm!
Bon alors si vous avez suivit mes instructions du billet précédent vous avez maintenant de belles stats toutes propres.
Sauf que pour la mise a jour c'est très moyennement pratique je vous l'accorde.
Ne vous inquiétez pas, la solution est (relativement) simple. Deux ou trois lignes dans un script bash et pis tout ira bien.
Préparez vous a dégainer votre vi préféré, ça commence.
Prenons le script suivant:
#! /bin/bash datesem=`date +%W` dateprevsem=`date --date='1 days ago' +%W` datejour=`date --date='1 days ago' +%u.gz` dateday=`date --date='1 days ago' +%A` if $dateday = "Sunday" then echo "/kunden/homepages/5/d143550037/htdocs/logs/access.log.$dateprevsem.gz" else echo "/kunden/homepages/5/d143550037/htdocs/logs/access.log.$datesem.$datejour" fi
Tout d'abord on récupère le numéro de la semaine en cours (date +%W). En effet les logs sont renommés ainsi: access.log.40.5 ou 40 est le numéro de la semaine en cours et 5 le jour (en commençant a partir du lundi).
La seconde variable sert a savoir dans quelle semaine nous étions la veille, les logs étant regroupés par semaine toutes les semaines la nuit entre le dimanche et le lundi, cette info a son importance.
La variable datejour sert a savoir quel jour de la semaine nous sommes (en chiffre). Enfin, la variable dateday sert a savoir le jour en lettres. Je sais que c'est totalement inutile vu que ma boucle conditionnelle pourrait être basée sur datejour=7 mais je trouvais ça plus joli!
Donc que fait ce script? Il retourne tout simplement l'emplacement du log de la journée précédente (ou de la semaine précédente pour les logs du dimanche).
Il reste a modifier le fichier de configuration d'awstats pour prendre en compte ce script:
LogFile="gzip -d <`/kunden/homepages/5/d143550037/htdocs/stat/jourdate.sh` |"
Cette ligne suffira a la place de ce qui vous aviez en LogFile.
Enfin ça suffira si vous copiez le script et que vous le nommez jourdate.sh.
Le rendre exécutable peut aussi être intéressant 
Enfin, pour automatiser tout ça, une ligne telle que celle ci dans la crontab et les stats seront mis a jour quotidiennement a 2h du matin: 00 02 * * * /usr/local/bin/perl /kunden/homepages/5/d143550037/htdocs/stat/awstats.pl -config=madcastor.info -update
Par ailleurs, si vous vouez intégrez d'anciens logs dans vos stats awstats c'est assez simple. Le seul inconvénient est qu'awstats ne sait pas ajouter des logs plus anciens que ceux qu'il a déjà ... Il faut donc tout d'abord supprimer les logs actuels: allez dans le répertoire d'awstats et supprimez tous les fichiers awstats*.txt et awstats*.tmp. Attention ceci supprimera tous vos logs awstats pensez a faire une copie du répertoire avant on ne sais jamais...
Puis modifier dans awstats.conf le paramètre LogFile pour qu'il prenne les logs d'une semaine précédente par exemple pour la semaine 37:
#LogFile="gzip -d </kunden/homepages/5/d143550037/htdocs/logs/access.log.37.gz|"
Simple non?
Commentaires
1. Le mardi 10 octobre 2006 à 17:07, par sparh
Réponse de ulysse le mardi 10 octobre 2006 à 18:48
2. Le mercredi 11 octobre 2006 à 10:01, par sparh
3. Le mardi 17 octobre 2006 à 10:22, par sparh
4. Le jeudi 19 octobre 2006 à 10:54, par sparh
Réponse de ulysse le mercredi 25 octobre 2006 à 14:57
5. Le lundi 23 octobre 2006 à 12:36, par sparh
Réponse de ulysse le mercredi 25 octobre 2006 à 14:51
6. Le jeudi 26 octobre 2006 à 12:38, par sparh
7. Le mercredi 6 décembre 2006 à 11:28, par zorglub
8. Le dimanche 31 décembre 2006 à 00:05, par Thor
Réponse de ulysse le mardi 2 janvier 2007 à 23:07
9. Le dimanche 31 décembre 2006 à 00:10, par Thor
Réponse de ulysse le mardi 2 janvier 2007 à 23:10
10. Le vendredi 5 janvier 2007 à 21:12, par Thor
Réponse de ulysse le lundi 15 janvier 2007 à 07:33
11. Le vendredi 5 janvier 2007 à 23:20, par Thor
Réponse de ulysse le lundi 15 janvier 2007 à 07:33
12. Le vendredi 2 février 2007 à 04:28, par Sylvain
Réponse de ulysse le vendredi 2 février 2007 à 17:51
13. Le samedi 3 février 2007 à 05:01, par Sylvain
Réponse de ulysse le dimanche 4 février 2007 à 22:32
14. Le mardi 6 février 2007 à 01:09, par Sylvain
15. Le dimanche 11 février 2007 à 07:27, par Sylvain
16. Le mercredi 14 février 2007 à 15:53, par Sylvain
Réponse de ulysse le dimanche 11 mars 2007 à 00:15
17. Le samedi 10 mars 2007 à 22:38, par sparh
Réponse de ulysse le dimanche 11 mars 2007 à 00:10
18. Le lundi 12 mars 2007 à 17:34, par sylvain
Ajouter un commentaire