Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| awstats [Le 19/07/2010, 17:40] – lmmik, 78.238.227.12 | awstats [Le 19/12/2022, 12:54] (Version actuelle) – page largement obsolete 78.196.241.242 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag> }} | + | {{tag>serveur obsolete brouillon}} |
| ---- | ---- | ||
| - | ====== | + | ====== |
| - | ===== Présentation ===== | + | |
| - | + | ||
| - | Awstats permet de générer des statistiques pour son serveur. Voici de | + | |
| - | [[http:// | + | |
| + | **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' | ||
| + | Consultez des [[http:// | ||
| + | ===== Pré-requis ===== | ||
| + | * Disposer des [[: | ||
| + | * 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' |
| - | Paquets nécessaires | + | Le répertoire d' |
| - | < | ||
| - | awstats | ||
| - | libmldbm-perl | ||
| - | libnet-xwhois-perl # pour le plugin HostInfo | ||
| - | libgeo-ipfree-perl # pour le plugin geoipfree | ||
| - | </ | ||
| - | L' | + | ===== Configuration ===== |
| - | < | + | |
| - | / | + | |
| - | </ | + | |
| - | AWStats est un script CGI, son exécutable est : | + | Le(s) fichier(s) de configuration se trouve(nt) dans **/ |
| - | < | + | Il faut en créer |
| - | ==== Les fichiers de configuration : ==== | + | |
| - | + | ||
| - | Il(s) se trouve(nt) dans : | + | |
| - | < | + | |
| - | + | ||
| - | Il faut en mettre | + | |
| < | < | ||
| où ' | où ' | ||
| 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="/ | LogFile="/ | ||
| SiteDomain=" | SiteDomain=" | ||
| - | </code> | + | </file> |
| - | Voir les explications contenues dans le fichier pour les autres options | + | Voir les explications contenues dans le fichier |
| + | |||
| + | ===== Utilisation ===== | ||
| + | AWStats est un script CGI, il se lance avec la [[: | ||
| + | |||
| + | / | ||
| ==== Tester l' | ==== Tester l' | ||
| - | < | + | < |
| ... quelques instants plus tard, si tout va bien ... | ... quelques instants plus tard, si tout va bien ... | ||
| < | < | ||
| Ligne 73: | Ligne 66: | ||
| </ | </ | ||
| - | === Ajouter l' | + | === Ajouter l' |
| + | <note warning> | ||
| < | < | ||
| + | cd / | ||
| + | rm * | ||
| cd / | cd / | ||
| + | for i in `ls -tr access.log.*.gz` | ||
| + | do | ||
| + | echo " | ||
| + | zcat $i | / | ||
| + | done | ||
| + | </ | ||
| - | for i in access.log.*.gz; | + | Il faut créer un fichier et mettre le script dedans : |
| - | zcat $i | / | + | < |
| - | done | + | vim mon_script_ajout_de_logs.sh |
| </ | </ | ||
| - | <note important> | + | |
| + | Ajouter le code en faisant, | ||
| + | Donner les droits d' | ||
| < | < | ||
| - | cd / | + | 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 " | + | |
| - | | + | |
| - | sudo / | + | |
| - | sudo gzip " | + | |
| - | done | + | |
| </ | </ | ||
| - | </ | ||
| - | === Vérifier la production du fichier de statistique === | + | FIXME Le script doit être lancé avec sudo. |
| - | < | ||
| - | Il y a un fichier | + | === Vérifier la production du fichier |
| + | < | ||
| + | Il y a un fichier par mois et par site. | ||
| + | <note tip> | ||
| + | S'il y a des " | ||
| + | * commenter les 2 lignes de / | ||
| + | * lancer le traitement | ||
| + | * decommenter les lignes (supprimer le #) | ||
| + | </ | ||
| + | ==== Voir les statistiques dans une belle interface web ==== | ||
| + | D' | ||
| + | [[[[: | ||
| - | ==== Voir les statistiques dans une belle interface web ==== | + | <file>Alias / |
| - | + | ||
| - | == d' | + | |
| - | Créez le fichier : / | + | |
| - | le remplir avec : | + | |
| - | + | ||
| - | <code>Alias / | + | |
| Alias /awstatscss "/ | Alias /awstatscss "/ | ||
| Alias / | Alias / | ||
| - | ScriptAlias /stats / | + | < |
| + | ScriptAlias /stats / | ||
| + | </ | ||
| + | < | ||
| + | ScriptAlias /stats / | ||
| + | </ | ||
| # 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, | + | |
| - | Allow from all | + | |
| + | Allow from all | ||
| + | </ | ||
| + | < | ||
| + | Require all granted | ||
| + | </ | ||
| </ | </ | ||
| - | </code> | + | </file> |
| - | == Puis : == | + | |
| - | créez un lien symbolique dans / | + | |
| - | vers ce fichier | + | |
| - | + | ||
| - | Ou directement en ligne de commande | + | |
| - | < | + | |
| - | </code> | + | |
| - | Ajustez la gestion des droits d' | + | Ajustez la gestion des droits d' |
| - | <note important> | + | <note important> |
| < | < | ||
| </ | </ | ||
| - | == enjoy == | + | <note important> |
| + | < | ||
| + | </ | ||
| + | |||
| + | Activer la configuration créée \\ | ||
| + | < | ||
| + | |||
| + | Relancer apache \\ | ||
| + | < | ||
| - | < | + | Enjoy : \\ |
| + | http:// | ||
| et même si tout va bien : | et même si tout va bien : | ||
| - | < | + | http:// |
| + | Il se peut que le code ne soit pas interprété par le navigateur. Il faut alors permettre l' | ||
| + | < | ||
| + | Relancer apache \\ | ||
| + | < | ||
| ===== Ajouter des plugins à Awstats ===== | ===== Ajouter des plugins à Awstats ===== | ||
| Ligne 166: | Ligne 184: | ||
| * Récuperer la base GeoIp [[http:// | * Récuperer la base GeoIp [[http:// | ||
| - | * Placez le fichier dans le fichier | + | * Placez le fichier dans le répertoire |
| <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: | ||
| </ | </ | ||
| - | * Ensuite, il vous faut récupérer le fichier **PurePerl.pm** que vous trouverez à l' | + | * Ensuite, il vous faut récupérer le fichier **PurePerl.pm** que vous trouverez à l' |
| * Copiez le fichier PurePerl.pm qui se trouve le répertoire lib/Geo/Ip dans le répertoire / | * Copiez le fichier PurePerl.pm qui se trouve le répertoire lib/Geo/Ip dans le répertoire / | ||
| Ligne 178: | Ligne 196: | ||
| * Modifiez le fichier PurePerl.pm aux alentours de la ligne 213 (Fonction: //sub new//) en indiquant le chemin absolu d' | * Modifiez le fichier PurePerl.pm aux alentours de la ligne 213 (Fonction: //sub new//) en indiquant le chemin absolu d' | ||
| - | * Modifiez le fichier **geoip.pm** dans le répertoire / | + | * Modifiez le fichier **geoip.pm** dans le répertoire / |
| - | * 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:: | # Perl modules required: Geo::IP or Geo:: | ||
| # 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=" | + | LoadPlugin=" |
| <note help>Si après ceci vous obtenez : | <note help>Si après ceci vous obtenez : | ||
| < | < | ||
| - | Il faut aussi modifier le fichier / | + | Il faut aussi modifier le fichier |
| </ | </ | ||
| 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' | Pour l' | ||
| - | <code># | + | <file># |
| # EXTRA SECTIONS | # EXTRA SECTIONS | ||
| # | # | ||
| Ligne 218: | Ligne 235: | ||
| ExtraSectionAddSumRow1=1 | ExtraSectionAddSumRow1=1 | ||
| MaxNbOfExtra1=20 | MaxNbOfExtra1=20 | ||
| - | MinHitExtra1=1</ | + | MinHitExtra1=1</ |
| 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 / | cd / | ||
| cp awstats.conf awstats.ftp.conf | cp awstats.conf awstats.ftp.conf | ||
| - | [[: | + | [[: |
| - | Changez les variables suivantes | + | Changez les variables suivantes |
| | | ||
| Ligne 248: | Ligne 265: | ||
| | | ||
| - | [[: | + | [[: |
| - | 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) |
| | | ||
| Ligne 267: | Ligne 284: | ||
| rm / | rm / | ||
| - | Créez un peu de trafique | + | Créez un peu de trafic |
| / | / | ||
| - | Tout devrait bien s' | + | Tout devrait bien s' |
| - | Si vous avez un message qui vous dit qu'il y a des corrupted records, faites bien attentions | + | |
| + | Si vous avez un message qui vous dit qu'il y a des "corrupted records", faites bien attention | ||
| Voila, votre serveur proftpd est maintenant monitoré. | Voila, votre serveur proftpd est maintenant monitoré. | ||
| - | je vous invite à lire l' | + | Vous pouvez |
| - | FAQ-COM090 : SETUP FOR FTP SERVER LOG FILES (proftpd, vsftpd, ...) | + | |
| - | http:// | + | |
| + | **(en)** [[http:// | ||
| Ligne 296: | Ligne 315: | ||
| < | < | ||
| - | 0,10, | + | */10 * * * * www-data [ -x / |
| tats.pl -config=awstats -update >/ | tats.pl -config=awstats -update >/ | ||
| </ | </ | ||
| Ligne 303: | Ligne 322: | ||
| < | < | ||
| - | 0,10, | + | */10 * * * * |
| </ | </ | ||
| Ligne 387: | Ligne 406: | ||
| Vous avez ainsi la liste de toutes les tâches qui s' | Vous avez ainsi la liste de toutes les tâches qui s' | ||
| + | === 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 : / | ||
| + | |||
| + | Alors il existe une solution pour mettre a jour l' | ||
| + | |||
| + | < | ||
| + | vi / | ||
| + | </ | ||
| + | |||
| + | Par exemple pour une generation des stats toutes les dix minutes, | ||
| + | sur l' | ||
| + | |||
| + | < | ||
| + | */10 * * * * root / | ||
| + | </ | ||
| ==== logrotate (rotation des logs) ==== | ==== logrotate (rotation des logs) ==== | ||
| Ligne 427: | Ligne 464: | ||
| </ | </ | ||
| + | ==== 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 / | ||
| + | sudo chmod 644 / | ||
| + | </ | ||
| - | [[apt://'' | + | Editez ensuite ce fichier et modifiez les lignes suivantes pour mettre les paramètres adapté à votre configuration |
| - | ===== Voir aussi ===== | + | <code file> |
| + | LogFile="/ | ||
| + | SiteDomain=" | ||
| + | DNSLookup=1 | ||
| + | </ | ||
| - | * [[http://www.system-linux.eu/index.php? | + | < |
| - | * [[http:// | + | |
| - | + | Premier lancement : <code bash> | |
| - | ===== 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& | + | Génération des pages statiques : |
| - | * [[http://pwet.fr/blog/statistiques_web_avec_awstats_sous_ubuntu_en_mode_cgi]] | + | <code bash> |
| - | * [[http:// | + | sudo mkdir / |
| - | * [[http://awstats.sourceforge.net|site officiel]] | + | sudo cp -R / |
| - | * [[http:// | + | </ |
| - | * [[http:// | + | |
| + | < | ||
| + | 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. | ||
| + | </ | ||
| + | |||
| + | Créez ensuite le fichier **/ | ||
| + | |||
| + | <code bash> | ||
| + | #!/bin/bash | ||
| + | |||
| + | / | ||
| + | </ | ||
| + | |||
| + | Changez lui ses droits : <code bash> | ||
| + | |||
| + | === Création d'un site pour accéder à ces pages générées === | ||
| + | |||
| + | Créez le fichier // / | ||
| + | |||
| + | <code file> | ||
| + | < | ||
| + | ServerAdmin email@site.com | ||
| + | ServerName awstats.ubuntu-fr.org | ||
| + | DocumentRoot | ||
| + | ErrorLog / | ||
| + | CustomLog / | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Puis lancer la ligne de commande : <code bash> | ||
| + | |||
| + | Ajustez la gestion des droits d' | ||
| + | |||
| + | === Test final === | ||
| + | |||
| + | Dans votre navigateur préféré: taper l'URL: [[http:// | ||
| + | |||
| + | === Source === | ||
| + | |||
| + | * [[http://nicolas.agius.pagesperso-orange.fr/linux/docs/ | ||
| + | ===== Statistiques des mails (Postfix) ===== | ||
| + | |||
| + | ==== Configuration classique ===== | ||
| + | |||
| + | **Procéder ainsi :** | ||
| + | |||
| + | Rendez-vous dans le répertoire de configuration de awstats : | ||
| + | |||
| + | cd / | ||
| + | |||
| + | Créez le fichier awstats.mails.conf | ||
| + | |||
| + | sudo cp awstats.conf awstats.mails.conf | ||
| + | |||
| + | Modifiez les champs suivants : | ||
| + | |||
| + | | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | Lancer la mise à jour des statistiques : | ||
| + | |||
| + | sudo / | ||
| + | |||
| + | Pour la mise à jour automatique des statistiques, | ||
| + | |||
| + | " | ||
| + | |||
| + | par | ||
| + | |||
| + | " | ||
| + | |||
| + | ==== Configuration multi-instance postfix ===== | ||
| + | |||
| + | Exemple de 2 files postfix: une pour le système et l' | ||
| + | |||
| + | | ||
| + | * Créez le fichier **awstats.mails-service.conf**: | ||
| + | * Modifiez le champ suivant :<code file> | ||
| + | * Lancer la mise à jour des statistiques :<code bash> | ||
| + | * Pour la mise à jour automatique des statistiques, | ||
| + | ===== Voir aussi ===== | ||
| + | |||
| + | * **(en)** [[http:// | ||
| + | * [[https://www.system-linux.eu/index.php? | ||
| + | * [[http://www.mrunix.net/webalizer/|Webalizer]] - une alternative à Awstats. | ||
| + | * [[http:// | ||
| + | * [[https:// | ||
| + | * [[http:// | ||
| + | |||
| + | ---- | ||
| + | // | ||
