Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
awstats [Le 19/07/2010, 17:40]
78.238.227.12 lmmik,
awstats [Le 19/12/2022, 12:54] (Version actuelle)
78.196.241.242 page largement obsolete
Ligne 1: Ligne 1:
-{{tag> }}+{{tag>serveur obsolete brouillon}}
  
 ---- ----
  
-====== ​Awstats ​====== +====== ​AWStats ​======
-===== Présentation ===== +
- +
-Awstats permet de générer des statistiques pour son serveur. Voici de  +
-[[http://​awstats.sourceforge.net/#​DEMO|jolis screenshots]] de ses capacités.+
  
 +**AWStats** est un logiciel libre sous licence GPL qui permet de générer des statistiques pour son serveur. Il offre des vues graphiques statiques mais aussi dynamiques des statistiques d'​accès à vos serveurs web, FTP, courrier ou en continu (streaming).
  
 +Consultez des [[http://​awstats.sourceforge.net/#​DEMO|captures d'​écran]] montrant ses capacités.
  
 +===== Pré-requis =====
  
 +  * Disposer des [[:​sudo|droits d'​administration]].
 +  * Disposer d'une connexion à Internet configurée et activée.
 +  * Un serveur [[:Apache]] déjà installé et fonctionnel.
  
 ===== Installation ===== ===== Installation =====
  
-Nous supposons Apache déjà installé et fonctionnel+Pour installer ce logiciel, il suffit d'​[[:​tutoriel:​comment_installer_un_paquet#​paquet_present_dans_les_depots|installer les paquets]] **[[apt://​awstats,​libmldbm-perl,​libnet-xwhois-perl,​libgeo-ipfree-perl|awstats,​ libmldbm-perl,​ libnet-xwhois-perl,​ libgeo-ipfree-perl]]**.
  
-Paquets nécessaires+Le répertoire d'​installation se créé dans **/​usr/​share/​awstats/​**.
  
-<​code>​ 
-awstats ​           # Paquet principal 
-libmldbm-perl ​     # pour le plugin hashfiles 
-libnet-xwhois-perl # pour le plugin HostInfo 
-libgeo-ipfree-perl # pour le plugin geoipfree 
-</​code>​ 
  
-L'​installation se fait dans  +===== Configuration =====
-<​code>​ +
-/​usr/​share/​awstats/​ +
-</​code>​+
  
-AWStats est un script CGI, son exécutable est :+Le(s) fichier(s) de configuration se trouve(nt) dans **/​etc/​awstats/​**.
  
-<​code>/​usr/​lib/​cgi-bin/​awstats.pl</​code>​ +Il faut en créer ​un par site ; dans un [[:​terminal]] ​:
-==== Les fichiers de configuration : ==== +
- +
-Il(s) se trouve(nt) dans : +
-<​code>/​etc/​awstats/</​code>​ +
- +
-Il faut en mettre ​un par site :+
 <​code>​sudo cp awstats.conf awstats.ma_machine.mon_domaine.mon_pays.conf</​code>​ <​code>​sudo cp awstats.conf awstats.ma_machine.mon_domaine.mon_pays.conf</​code>​
 où '​ma_machine.mon_domaine.mon_pays'​ correspond à l'url de la machine qui permettra de consulter les statistiques avec un navigateur à l'​adresse : http://​ma_machine.mon_domaine.mon_pays/​cgi-bin/​awstats.pl où '​ma_machine.mon_domaine.mon_pays'​ correspond à l'url de la machine qui permettra de consulter les statistiques avec un navigateur à l'​adresse : http://​ma_machine.mon_domaine.mon_pays/​cgi-bin/​awstats.pl
Ligne 47: Ligne 34:
 Réglez ce(s) fichier(s) de configuration(s) avec notamment dans le cas d'un serveur web apache : Réglez ce(s) fichier(s) de configuration(s) avec notamment dans le cas d'un serveur web apache :
  
-<code>+<file>
 LogType=W LogType=W
 LogFormat=1 LogFormat=1
 LogFile="/​var/​log/​apache2/​access.log"​ # pour apache2 LogFile="/​var/​log/​apache2/​access.log"​ # pour apache2
 SiteDomain="​ma_machine.mon_domaine.mon_pays"​ SiteDomain="​ma_machine.mon_domaine.mon_pays"​
-</code+</file
-Voir les explications contenues dans le fichier pour les autres options+Voir les explications contenues dans le fichier ​**awstats.conf** ​pour les autres options
 + 
 +===== Utilisation ===== 
 +AWStats est un script CGI, il se lance avec la [[:​commande_shell|commande]] suivante : 
 + 
 +  /​usr/​lib/​cgi-bin/​awstats.pl 
  
 ==== Tester l'​analyse des logs ==== ==== Tester l'​analyse des logs ====
  
-<​code>​sudo /​usr/​lib/​cgi-bin/​awstats.pl -config=ma_machine.mon_domaine.mon_pays ​update</​code>​+<​code>​sudo /​usr/​lib/​cgi-bin/​awstats.pl -config=ma_machine.mon_domaine.mon_pays ​-update</​code>​
  ... quelques instants plus tard, si tout va bien ...  ... quelques instants plus tard, si tout va bien ...
 <​code>​ <​code>​
Ligne 73: Ligne 66:
 </​code>​ </​code>​
  
-=== Ajouter l'​analyse des logs archivés === +=== Ajouter l'​analyse des logs archivés:  ​=== 
 +<note warning>​Attention le script qui suit est mauvais, potenteillemnt dangereux, et doit être corrigé</​note>​
 <​code>​ <​code>​
 +cd /​var/​lib/​awstats
 +rm *
 cd /​var/​log/​apache* cd /​var/​log/​apache*
 +for i in `ls -tr access.log.*.gz` ​
 +do
 + echo "​Fichier traité: $i"
 + zcat $i | /​usr/​lib/​cgi-bin/​awstats.pl -config=ma_machine_mon_domaine.com -update -LogFile=-
 +done
 +</​code> ​
  
-for i in access.log.*.gz;​ do +Il faut créer un fichier et mettre le script dedans : 
-    zcat $i | /​usr/​lib/​cgi-bin/​awstats.pl -config=ma_machine.mon_domaine.mon_pays -update; +<​code>​ 
-done+vim mon_script_ajout_de_logs.sh
 </​code>​ </​code>​
-<note important>​çà ne fonctionne pas !!! sans passer ​l'​argument -LogFile=xxx çà ne fait qu'analyser n fois le fichier non compressé!!! ​ Utiliser ceci à la place :+ 
 +Ajouter le code en faisant, ​passer ​en mode édition :i, puis maj + touch "​ins"​ pour coller le contenu ​qu'on aura copié précédemment. Pour sauvegarder et quitter dans vim : echap, puis :wq 
 +Donner les droits d'​execution et le lancer ​:
 <​code>​ <​code>​
-cd /​var/​log/​apache +chmod +x vim mon_script_ajout_de_logs.sh 
-for f in $(ls -rt access.log.*.gz) ; do +sudo ./mon_script_ajout_de_logs.sh
-  echo "​$f"​ +
-  ​sudo gzip -d "​$f"​ +
-  sudo /​usr/​lib/​cgi-bin/​awstats.pl -config=ma_machine.mon_domaine.mon_pays -update -LogFile=${f/.gz/} +
-  sudo gzip "​${f/​.gz/​}"​ +
-done+
 </​code>​ </​code>​
-</​note>​ 
  
  
-=== Vérifier la production du fichier de statistique ===+FIXME Le script doit être lancé avec sudo.
  
-<​code>/​var/​lib/​awstats/​awstats052007.ma_machine.mon_domaine.mon_pays.txt</​code>​ 
  
-Il y a un fichier ​par mois et par site+=== Vérifier la production du fichier ​de statistiques ===
  
 +<​code>/​var/​lib/​awstats/​awstats052007.ma_machine.mon_domaine.mon_pays.txt</​code>​
  
 +Il y a un fichier par mois et par site.
  
 +<note tip>
 +S'il y a des "​trous"​ dans les stats, c'est que le cron est passé par là en cours traitement, solution :
 +  * commenter les 2 lignes de /​etc/​cron.d/​awstats (ajouter le caractère # devant)
 +  * lancer le traitement
 +  * decommenter les lignes (supprimer le #)
 +</​note>​
 +==== Voir les statistiques dans une belle interface web ====
  
 +D'​abord créez un alias pour apache.
  
 +[[[[:​tutoriel:​comment_modifier_un_fichier|Créez le fichier]] **/​etc/​apache2/​conf-available/​awstats.conf** et ajoutez-lui ceci :
  
-==== Voir les statistiques dans une belle interface web ==== +<file>Alias /​awstatsclasses "/​usr/​share/​awstats/​classes/"​
- +
-== d'​abord créez un alias pour apache : == +
-Créez le fichier : /​etc/​apache2/​sites-available/​awstats +
-le remplir avec : +
- +
-<code>Alias /​awstatsclasses "/​usr/​share/​awstats/​classes/"​+
 Alias /awstatscss "/​usr/​share/​awstats/​css/"​ Alias /awstatscss "/​usr/​share/​awstats/​css/"​
 Alias /​awstats-icon "/​usr/​share/​awstats/​icon/"​ Alias /​awstats-icon "/​usr/​share/​awstats/​icon/"​
  
-ScriptAlias /stats /​usr/​lib/​cgi-bin/​awstats.pl+  <​IfVersion < 2.3> 
 +     ScriptAlias /stats /​usr/​lib/​cgi-bin/​awstats.pl 
 +  </​IfVersion> ​   
 +  <​IfVersion >= 2.3> 
 +      ScriptAlias /stats /​usr/​lib/​cgi-bin/​ 
 +   </​IfVersion>​ 
  
 # mêmes paramètres que dans awstats.*.conf # mêmes paramètres que dans awstats.*.conf
Ligne 128: Ligne 135:
   Options +ExecCGI   Options +ExecCGI
   AllowOverride None   AllowOverride None
-  Order allow,​deny +  ​<​IfVersion < 2.3> 
-  Allow from all+      ​Order allow,​deny 
 +      Allow from all 
 +  </​IfVersion>​  
 + <​IfVersion >= 2.3> 
 +      Require all granted 
 +   </​IfVersion>​
 </​Directory>​ </​Directory>​
-</code> +</file>
-== Puis : == +
-créez un lien symbolique dans /​etc/​apache2/​sites-enabled +
-vers ce fichier +
- +
-Ou directement en ligne de commande +
-<​code>​a2ensite awstats +
-</code>+
  
-Ajustez la gestion des droits d'​accès selon votre besoin de confidentialité ;-) +Ajustez la gestion des droits d'​accès selon votre besoin de confidentialité;​-) 
-<note important>​Attention : dans cet exemple, votre page de statistiques sera accessible pour n'​importe quel utilisateur. Si vous ne souhaitez la rendre accessible que pour vous seul, pensez à modifier la ligne suivante : +<note important>​Attention : dans cet exemple, votre page de statistiques sera accessible pour n'​importe quel utilisateur. Si vous ne souhaitez la rendre accessible que pour vous seul, pensez à modifier la ligne suivante :
 <​code>​Allow from all</​code>​ en <​code>​Allow from 127.0.0.1</​code> ​ <​code>​Allow from all</​code>​ en <​code>​Allow from 127.0.0.1</​code> ​
 </​note>​ </​note>​
  
-== enjoy ==+<note important>​Attention : Si vous souhaitez protéger l’accès à votre page de statistiques AWStats en utilisant l'​authentification apache. Il faudra éditer **/​etc/​apache2/​conf-available/​serve-cgi-bin.conf** et remplacer : 
 +<​code>​AllowOverride None</​code>​ en <​code>​AllowOverride AuthConfig</​code>​  
 +</​note>​ 
 + 
 +Activer la configuration créée \\ 
 +<​code>​a2enconf awstats</​code>​ 
 + 
 +Relancer apache \\ 
 +<​code>​systemctl reload apache2</​code>​
  
-<​code>​http://​ma_machine.mon_domaine.mon_pays/​cgi-bin/​awstats.pl</​code>​+Enjoy : \\ 
 +http://​ma_machine.mon_domaine.mon_pays/​cgi-bin/​awstats.pl
 et même si tout va bien : et même si tout va bien :
-<​code>​http://​ma_machine.mon_domaine.mon_pays/​stats/​</​code>​+http://​ma_machine.mon_domaine.mon_pays/​stats/​
  
 +Il se peut que le code ne soit pas interprété par le navigateur. Il faut alors permettre l'​exécution des scripts cgi par apache. On active le module cgi \\
 +<​code>​a2enmod cgi</​code>​
 +Relancer apache \\
 +<​code>​systemctl reload apache2</​code>​
 ===== Ajouter des plugins à Awstats ===== ===== Ajouter des plugins à Awstats =====
  
Ligne 166: Ligne 184:
   * Récuperer la base GeoIp [[http://​www.maxmind.com/​download/​geoip/​database/​GeoLiteCountry/​|à l'​adresse suivante]]. Vous pourrez téléchargez cette base tous les mois (car MaxMind la met à jour mensuellement).   * Récuperer la base GeoIp [[http://​www.maxmind.com/​download/​geoip/​database/​GeoLiteCountry/​|à l'​adresse suivante]]. Vous pourrez téléchargez cette base tous les mois (car MaxMind la met à jour mensuellement).
  
-  * Placez le fichier dans le fichier ​**/​usr/​share/​awstats/​lib/​**,​ puis dézippez le avec la commande //gunzip GeoIP.dat.gz//​+  * Placez le fichier dans le répertoire ​**/​usr/​share/​awstats/​lib/​**,​ puis dézippez le avec la commande //gunzip GeoIP.dat.gz//​
  
 <note tip>Vous pouvez automatiser ces deux étapes en rajoutant par exemple dans [[cron]] (dans un terminal, tapez **sudo crontab -e**) la commande : <note tip>Vous pouvez automatiser ces deux étapes en rajoutant par exemple dans [[cron]] (dans un terminal, tapez **sudo crontab -e**) la commande :
Ligne 172: Ligne 190:
 </​note>​ </​note>​
  
-  * Ensuite, il vous faut récupérer le fichier **PurePerl.pm** que vous trouverez à l'​adresse [[http://www.maxmind.com/​download/​geoip/​api/​pureperl/​|http://www.maxmind.com/​download/​geoip/​api/​pureperl/​]]. Vous devrez désarchiver le fichier (version actuelle: **Geo-IP-PurePerl-1.25.tar.gz**) avec la commande //tar xzf Geo-IP-PurePerl-1.25.tar.gz//​+  * Ensuite, il vous faut récupérer le fichier **PurePerl.pm** que vous trouverez à l'​adresse [[http://geolite.maxmind.com/​download/​geoip/​api/​pureperl/​Geo-IP-PurePerl-1.25.tar.gz]] . Vous devrez désarchiver le fichier (version actuelle: **Geo-IP-PurePerl-1.25.tar.gz**) avec la commande //tar xzf Geo-IP-PurePerl-1.25.tar.gz//​
  
   * Copiez le fichier PurePerl.pm qui se trouve le répertoire lib/Geo/Ip dans le répertoire /​usr/​share/​awstats/​lib/​   * Copiez le fichier PurePerl.pm qui se trouve le répertoire lib/Geo/Ip dans le répertoire /​usr/​share/​awstats/​lib/​
Ligne 178: Ligne 196:
   * Modifiez le fichier PurePerl.pm aux alentours de la ligne 213 (Fonction: //sub new//) en indiquant le chemin absolu d'​accès à la base GeoIP.dat (/​usr/​share/​awstats/​lib/​)   * Modifiez le fichier PurePerl.pm aux alentours de la ligne 213 (Fonction: //sub new//) en indiquant le chemin absolu d'​accès à la base GeoIP.dat (/​usr/​share/​awstats/​lib/​)
  
-  * Modifiez le fichier **geoip.pm** dans le répertoire /​usr/​share/​awstats/​plugins,​ à la ligne **if (!eval ('​require "​Geo/​IP/​PurePerl.pm"​)) {** (aux alentours de la ligne 20, entête de la fonction: # ENTER HERE THE USE COMMAND FOR ALL REQUIRED PERL MODULES) en remplaçant **Geo/​IP/​PurePerl.pm** par le chemin absolu du fichier **/​usr/​share/​awstats/​lib/​PurePerl.pm** ​+  * Modifiez le fichier **geoip.pm** dans le répertoire /​usr/​share/​awstats/​plugins,​ à la ligne **if (!eval ('​require "​Geo/​IP/​PurePerl.pm"​)) {** (aux alentours de la ligne 21, entête de la fonction: # ENTER HERE THE USE COMMAND FOR ALL REQUIRED PERL MODULES) en remplaçant **Geo/​IP/​PurePerl.pm** par le chemin absolu du fichier **/​usr/​share/​awstats/​lib/​PurePerl.pm**
  
-  * Ensuite, il ne vous reste plus qu'à ajouter le code suivant à la fin de votre fichier de configuration de votre site : +  * Ensuite, il ne vous reste plus qu'à ajouter le code suivant à la fin de votre fichier de configuration de votre site :<file># Plugin: GeoIP
-<code># Plugin: GeoIP+
 # Perl modules required: Geo::IP or Geo::​IP::​PurePerl (from Maxmind) # Perl modules required: Geo::IP or Geo::​IP::​PurePerl (from Maxmind)
 # Country chart is built from an Internet IP-Country database. # Country chart is built from an Internet IP-Country database.
 # This plugin is useless for intranet only log files. # This plugin is useless for intranet only log files.
-# Note: You must choose between using this plugin (need Perl Geo::IP module ​+# Note: You must choose between using this plugin (need Perl Geo::IP module
 # from Maxmind, database more up to date) or the GeoIPfree plugin (need # from Maxmind, database more up to date) or the GeoIPfree plugin (need
 # Perl Geo::IPfree module, database less up to date). # Perl Geo::IPfree module, database less up to date).
 # This plugin reduces AWStats speed of 8% ! # This plugin reduces AWStats speed of 8% !
 # #
-LoadPlugin="​geoip GEOIP_STANDARD /​usr/​share/​awstats/​lib/​GeoIP.dat"</​code>+LoadPlugin="​geoip GEOIP_STANDARD /​usr/​share/​awstats/​lib/​GeoIP.dat"</​file>
  
 <note help>Si après ceci vous obtenez : <note help>Si après ceci vous obtenez :
 <​code>​Error:​ Plugin init for plugin '​geoip'​ failed with return code: Undefined subroutine &​Geo::​IP::​GEOIP_STANDARD called at /​usr/​share/​awstats/​plugins/​geoip.pm line 69. (A module required by plugin might be missing).</​code> ​ <​code>​Error:​ Plugin init for plugin '​geoip'​ failed with return code: Undefined subroutine &​Geo::​IP::​GEOIP_STANDARD called at /​usr/​share/​awstats/​plugins/​geoip.pm line 69. (A module required by plugin might be missing).</​code> ​
-Il faut aussi modifier le fichier /​usr/​share/​awstats/​plugins/​geoip.pm ​la ligne 197 <​code>​$type='​geoip';</​code>​ par <​code>​$type='​geoippureperl';</​code>​+Il faut aussi modifier le fichier ​**/​usr/​share/​awstats/​plugins/​geoip.pm** à la ligne 17 <​code>​$type='​geoip';</​code>​ par <​code>​$type='​geoippureperl';</​code>​
 </​note>​ </​note>​
  
Ligne 203: Ligne 220:
 Si vous avez beaucoup de fichiers téléchargés sur votre site, ce plugin vous indiquera les 20 fichiers les plus téléchargés. Si vous avez beaucoup de fichiers téléchargés sur votre site, ce plugin vous indiquera les 20 fichiers les plus téléchargés.
 Pour l'​installer,​ il vous suffit d'​ajouter ce bout de code à la fin de votre fichier de configuration de votre site : Pour l'​installer,​ il vous suffit d'​ajouter ce bout de code à la fin de votre fichier de configuration de votre site :
-<code>#​-----------------------------------------------------------------------------+<file>#​-----------------------------------------------------------------------------
 # EXTRA SECTIONS # EXTRA SECTIONS
 #​----------------------------------------------------------------------------- #​-----------------------------------------------------------------------------
Ligne 218: Ligne 235:
 ExtraSectionAddSumRow1=1 ExtraSectionAddSumRow1=1
 MaxNbOfExtra1=20 MaxNbOfExtra1=20
-MinHitExtra1=1</​code>+MinHitExtra1=1</​file>
  
  
Ligne 234: Ligne 251:
 ===== ProFtpd ===== ===== ProFtpd =====
  
-Vous allez devoir créer un fichier de config pour chaque serveur+Vous allez devoir créer un fichier de config pour chaque serveur ​:
  
    cd /​etc/​awstats/​    cd /​etc/​awstats/​
    cp awstats.conf awstats.ftp.conf    cp awstats.conf awstats.ftp.conf
  
-[[:​tutoriel:​comment_editer_un_fichier|Editez le fichier]] /​etc/​awstats/​awstats.ftp.conf+[[:​tutoriel:​comment_editer_un_fichier|Editez le fichier]] ​**/​etc/​awstats/​awstats.ftp.conf**
  
-Changez les variables suivantes+Changez les variables suivantes ​:
  
    ​LogFile="/​var/​log/​xferlog" ​    ​LogFile="/​var/​log/​xferlog" ​
Ligne 248: Ligne 265:
    ​LogSeparator="​\t"  ​    ​LogSeparator="​\t"  ​
  
-[[:​tutoriel:​comment_editer_un_fichier|Editez ensuite le fichier]]: /​etc/​proftpd/​proftp.conf+[[:​tutoriel:​comment_editer_un_fichier|Editez ensuite le fichier]]: ​**/​etc/​proftpd/​proftp.conf**
  
-Ajoutez les lignes suivantes au fichier (à la suite des commandes identiques existants déja).+Ajoutez les lignes suivantes au fichier (à la suite des commandes identiques existants déja) ​:
  
    ​LogFormat awstats "%t %h %u %m %f %s %b" ​        ​LogFormat awstats "%t %h %u %m %f %s %b" ​    
Ligne 267: Ligne 284:
    rm /​var/​log/​xferlog && /​etc/​init.d/​proftpd restart    rm /​var/​log/​xferlog && /​etc/​init.d/​proftpd restart
  
-Créez un peu de trafique ​sur votre logiciel ftp, en téléchargeant un fichier par exemple.\\ Puis executez ​la commande:+Créez un peu de trafic ​sur votre logiciel ftp, en téléchargeant un fichier par exemple.\\ Puis exécutez ​la commande:
  
    /​usr/​lib/​cgi-bin/​awstats.pl -config=ftp ?update    /​usr/​lib/​cgi-bin/​awstats.pl -config=ftp ?update
  
-Tout devrait bien s'​être déroulé.\\ +Tout devrait bien s'​être déroulé. 
-Si vous avez un message qui vous dit qu'il y a des corrupted records, faites bien attentions ​à la note concernant les tabulations,​ c'est source d'​erreur !+ 
 +Si vous avez un message qui vous dit qu'il y a des "corrupted records", faites bien attention ​à la note concernant les tabulations,​ c'est source d'​erreur !
  
 Voila, votre serveur proftpd est maintenant monitoré. Voila, votre serveur proftpd est maintenant monitoré.
  
-je vous invite à lire l'​article suivant pour plus d'​options:​\\ +Vous pouvez ​lire l'​article suivant pour plus d'​options:​ 
-FAQ-COM090 : SETUP FOR FTP SERVER LOG FILES (proftpd, vsftpd, ...) + 
-http://​awstats.sourceforge.net/​docs/​awstats_faq.html#​FTP+ 
 +**(en)** [[http://​awstats.sourceforge.net/​docs/​awstats_faq.html#​FTP|FAQ-COM090 : SETUP FOR FTP SERVER LOG FILES (proftpd, vsftpd, ...)]]
  
  
Ligne 296: Ligne 315:
  
 <​code>​ <​code>​
-0,10,​20,​30,​40,​50 ​* * * * www-data [ -x /​usr/​lib/​cgi-bin/​awstats.pl -a -f /​etc/​awstats/​awstats.conf -a -r /​var/​log/​apache/​access.log ] && /​usr/​lib/​cgi-bin/​aws+*/10 * * * * www-data [ -x /​usr/​lib/​cgi-bin/​awstats.pl -a -f /​etc/​awstats/​awstats.conf -a -r /​var/​log/​apache/​access.log ] && /​usr/​lib/​cgi-bin/​aws
 tats.pl -config=awstats -update >/​dev/​null tats.pl -config=awstats -update >/​dev/​null
 </​code>​ </​code>​
Ligne 303: Ligne 322:
  
 <​code>​ <​code>​
-0,10,​20,​30,​40,​50 ​* * * *+*/10 * * * *
 </​code>​ </​code>​
  
Ligne 387: Ligne 406:
 Vous avez ainsi la liste de toutes les tâches qui s'​effectueront automatiquement. Vous avez ainsi la liste de toutes les tâches qui s'​effectueront automatiquement.
  
 +=== Solution 4 ===
 +
 +//(Ne connaissant ni emacs, ni nano, je propose **vi** qui est fourni de base :D )//
 +
 +Si vous avez respecte le format de noms de fichier de config : /​etc/​awstats///​awstats.DOMAINE.TLD.conf//​
 +
 +Alors il existe une solution pour mettre a jour l'​ensemble de vos stats
 +
 +<​code>​
 +vi /​etc/​cron.d/​awstats
 +</​code>​
 +
 +Par exemple pour une generation des stats toutes les dix minutes,
 +sur l'​ensemble de vos fichiers (verifiez le chemin des fichiers) :
 +
 +<​code>​
 +*/10 * * * * root /​usr/​share/​doc/​awstats/​examples/​awstats_updateall.pl -awstatsprog=/​usr/​lib/​cgi-bin/​awstats.pl now > /dev/null
 +</​code>​
  
 ==== logrotate (rotation des logs) ==== ==== logrotate (rotation des logs) ====
Ligne 427: Ligne 464:
 </​code>​ </​code>​
  
 +==== Dans le cas d'un serveur apache2 avec la directive ChrootDir ====
  
 +Comme le serveur **apache2** fonctionne en environnemnt chrooté, awstats ne peux pas être installé en tant que script CGI, (Perl n'est pas présent dans le chroot). Il sera donc installé en dehors, avec une génération de pages statiques accessibles par le serveur **Apache**.
  
 +=== Création du fichier d'un configuration awstats spécifique ===
  
 +<code bash>
 +sudo sh -c "zcat /​usr/​share/​doc/​awstats/​examples/​awstats.model.conf.gz > /​etc/​awstats/​awstats.www.ubuntu-fr.org.conf"​
 +sudo chmod 644 /​etc/​awstats/​awstats.www.ubuntu-fr.org.conf
 +</​code>​
  
-[[apt://''​Paquet''<​del> ​ * Texte barré</​del>​]][[:​tutoriel:​comment_installer_un_paquet|[[:​tutoriel:​comment_modifier_un_fichier|installez le paquet]]__**Souligné**__]]+Editez ensuite ce fichier et modifiez les lignes suivantes pour mettre les paramètres adapté à votre configuration ​:
  
-===== Voir aussi =====+<code file> 
 +LogFile="/​var/​log/​apache2/​access_log"​ 
 +SiteDomain="​www.ubuntu-fr.org"​ 
 +DNSLookup=
 +</​code>​
  
-  * [[http://www.system-linux.eu/index.php?​post/2008/​12/​04/​Statistique-pour-vos-sites-internet|Piwik]] - une alternative à Awstats qui n'​utilise pas les logs apache, et qui produit des statistiques utilisant des graphiques en flash +<​note>​Vous pouvez aussi modifier le paramètre ​//HostAliases// si vous utilisez plusieurs VirtualHost.</note>
-  * [[http://​www.mrunix.net/webalizer/​|Webalizer]] - une alternative à Awstats.+
  
- +Premier lancement : <code bash>​sudo /​usr/​lib/​cgi-bin/​awstats.pl -config=www.ubuntu-fr.org -update</​code>​ et vérifiez ainsi qu'il n'y a pas d'​erreur dans la configuration.
  
-===== Liens utilisés pour rédiger cette page =====+=== Génération des pages statiques et création du cron ===
  
-  * <del>[[http://ernest.tuxicity.net/index.php?choix=Apache&​tuto=awstats-debian]]</del+Génération des pages statiques : 
-  * [[http://pwet.fr/blog/statistiques_web_avec_awstats_sous_ubuntu_en_mode_cgi]] +<code bash> 
-  * [[http://​www.petersblog.org/node/697]] +sudo mkdir /​web-chroot/​www/​awstats 
-  * [[http://awstats.sourceforge.net|site officiel]] +sudo cp -R /​usr/​share/​awstats/​icon/​ /​web-chroot/​www/​awstats/​icones 
-  * [[http://​www.baudelet.net/​awstats-plugins.htm|Baudelet]] ​fr +</​code>​ 
-  * [[http://​dedibox.echosblogs.org/​post/​608/​1754]] ​fr+ 
 +<​note>​ 
 +C'est un choix personnel de copier les icônes directement dans le dossier où seront placées les pages statiques générées. 
 +</​note>​ 
 + 
 +Créez ensuite le fichier **/​etc/​cron.daily/​awstats** contenant les lignes suivantes ​: 
 + 
 +<code bash> 
 +#!/bin/bash 
 + 
 +/​usr/​share/​doc/​awstats/​examples/​awstats_buildstaticpages.pl -config=www.ubuntu-fr.org -update -lang=fr -dir=/web-chroot/​www/​awstats/​ -awstatsprog=/​usr/​lib/​cgi-bin/​awstats.pl -diricons=/icones 
 +</​code>​ 
 + 
 +Changez lui ses droits : <code bash>​sudo chmod 755 /​etc/​cron.daily/​awstats</​code>​ Puis exécutez le une première fois. 
 + 
 +=== Création d'un site pour accéder à ces pages générées === 
 + 
 +Créez le fichier // /​etc/​apache2/​sites-available/​awstats ​// et ajoutez-lui ceci : 
 + 
 +<code file> 
 +<​VirtualHost *:80> 
 + ServerAdmin email@site.com 
 + ServerName awstats.ubuntu-fr.org 
 + DocumentRoot ​/web-chroot/​www/​awstats/​ 
 + ErrorLog /​var/​www/​ubuntu-fr.org/​logs/​error.log 
 + CustomLog /​var/​www/​ubuntu-fr.org/​logs/​.access.log combined 
 +</​VirtualHost> 
 +</​code>​ 
 + 
 +Puis lancer la ligne de commande : <code bash>​sudo a2ensite awstats</​code>​ 
 + 
 +Ajustez la gestion des droits d'​accès selon votre besoin de confidentialité 
 + 
 +=== Test final === 
 + 
 +Dans votre navigateur préféré: taper l'URL: [[http://​awstats.ubuntu-fr.org/​]] 
 + 
 +=== Source === 
 + 
 +  * [[http://nicolas.agius.pagesperso-orange.fr/linux/docs/​awstats.htm]] 
 +===== Statistiques des mails (Postfix) ===== 
 + 
 +==== Configuration classique ===== 
 + 
 +**Procéder ainsi :** 
 + 
 +Rendez-vous dans le répertoire de configuration de awstats : 
 + 
 +   cd /​etc/​awstats 
 + 
 +Créez le fichier awstats.mails.conf 
 + 
 +   sudo cp awstats.conf awstats.mails.conf 
 + 
 +Modifiez les champs suivants : 
 + 
 +   ​LogFile="​perl /​usr/​share/​doc/​awstats/​examples/​maillogconvert.pl standard < /​var/​log/​mail.log |" 
 + 
 +   ​LogType=M 
 +   ​LogFormat="​%time2 %email %email_r %host %host_r %method %url %code %bytesd"​ 
 +   ​LevelForBrowsersDetection=0 
 +   ​LevelForOSDetection=0 
 +   ​LevelForRefererAnalyze=0 
 +   ​LevelForRobotsDetection=0 
 +   ​LevelForWormsDetection=0 
 +   ​LevelForSearchEnginesDetection=0 
 +   ​LevelForFileTypesDetection=0 
 +   ​ShowMenu=1 
 +   ​ShowSummary=HB 
 +   ​ShowMonthStats=HB 
 +   ​ShowDaysOfMonthStats=HB 
 +   ​ShowDaysOfWeekStats=HB 
 +   ​ShowHoursStats=HB 
 +   ​ShowDomainsStats=0 
 +   ​ShowHostsStats=HBL 
 +   ​ShowAuthenticatedUsers=0 
 +   ​ShowRobotsStats=0 
 +   ​ShowEMailSenders=HBML 
 +   ​ShowEMailReceivers=HBML 
 +   ​ShowSessionsStats=0 
 +   ​ShowPagesStats=0 
 +   ​ShowFileTypesStats=0 
 +   ​ShowFileSizesStats=0 
 +   ​ShowBrowsersStats=0 
 +   ​ShowOSStats=0 
 +   ​ShowOriginStats=0 
 +   ​ShowKeyphrasesStats=0 
 +   ​ShowKeywordsStats=0 
 +   ​ShowMiscStats=0 
 +   ​ShowHTTPErrorsStats=0 
 +   ​ShowSMTPErrorsStats=1 
 + 
 +Lancer la mise à jour des statistiques : 
 + 
 +   sudo /​usr/​lib/​cgi-bin/​awstats.pl -config=mails -update 
 + 
 +Pour la mise à jour automatique des statistiques,​ cf solution 3 en remplaçant : 
 + 
 +   "​-config=votredomaine.tld -update"​ 
 + 
 +par 
 + 
 +   "​-config=mails -update"​ 
 + 
 +==== Configuration multi-instance postfix ===== 
 + 
 +Exemple de 2 files postfix: une pour le système et l'​autre pour un service quelconque, nommées respectivement postfix et postfix-service. Les 2 instances génères des logs dans le fichier // /​var/​log/​mail.log //. 
 + 
 +  ​* Rendez-vous dans le répertoire de configuration de awstats : <code bash>cd /​etc/​awstats</​code>​ 
 +  * Créez le fichier **awstats.mails-service.conf**:​ <code bash>​sudo cp awstats-mails.conf awstats.mails-service.conf</​code>​ 
 +  * Modifiez le champ suivant :<code file>​LogFile="​grep postfix-service /​var/​log/​mail.log | sed -e "​s:​postfix-service:​postfix:"​ | perl /​usr/​share/​doc/​awstats/​examples/​maillogconvert.pl standard |"</​code>​ 
 +  * Lancer la mise à jour des statistiques :<code bash>​sudo /​usr/​lib/​cgi-bin/​awstats.pl -config=mails-service -update</​code>​ 
 +  * Pour la mise à jour automatique des statistiques,​ cf solution 3 en remplaçant :<code file>​-config=votredomaine.tld -update</​code>​par<​code file>​-config=mails -update</​code>​ 
 +===== Voir aussi ===== 
 + 
 +  * **(en)** [[http://​awstats.sourceforge.net|Site officiel de AWStats]] 
 +  * [[https://www.system-linux.eu/index.php?​post/2008/​12/​04/​Statistique-pour-vos-sites-internet|Piwik]] - une alternative à Awstats qui n'​utilise pas les logs apache, et qui produit des statistiques utilisant des graphiques en flash 
 +  * [[http://www.mrunix.net/webalizer/|Webalizer]] - une alternative à Awstats. 
 +  * [[http://​pwet.fr/​blog/​statistiques_web_avec_awstats_sous_ubuntu_en_mode_cgi|Statistiques web avec AWStats sous Ubuntu en mode CGI]] 
 +  * [[https://​www.baudelet.net/​awstats-plugins.htm|Extras et plugins sur Baudelet]] 
 +  * [[http://​dedibox.echosblogs.org/​post/​608/​1754|Configurer sa Dédibox sous Ubuntu 6.06 LTS]] 
 + 
 +---- 
 +//​Contributeurs : ...//
  • awstats.1279554040.txt.gz
  • Dernière modification: Le 18/04/2011, 14:53
  • (modification externe)