Statistiques de site respectueuses de la vie privée pour votre site LaraClassifier / JobClass. Suivez les pages vues, les visiteurs uniques, les référents, les pays, les navigateurs, les plateformes, les mots-clés de recherche et les campagnes marketing, sans scripts tiers ni cookies.
Suivi des pages vues
Enregistre automatiquement chaque visite de page du front-end via un middleware. Aucune instrumentation manuelle requise.
Visiteurs uniques
Suivi des visiteurs uniques respectueux de la vie privée grâce à des empreintes hachées IP + User-Agent. Aucun cookie nécessaire.
Données géographiques
Résolvez les adresses IP des visiteurs en pays grâce à la bibliothèque GeoIP du cœur, avec des pilotes interchangeables.
Sources de trafic
Suivez les domaines et URL référents pour comprendre d'où provient votre trafic.
Navigateur & plateforme
L'analyseur de User-Agent intégré détecte le navigateur, la plateforme (OS) et le type d'appareil (ordinateur/mobile/tablette).
Suivi des campagnes UTM
Capture automatiquement les paramètres UTM (source, medium, campaign, term, content) des URL entrantes.
Widget du tableau de bord
Indicateurs de trafic en un coup d'œil, injectés directement dans le tableau de bord d'administration avec des graphiques de tendance.
Cas d'utilisation
Site portfolio ou d'agence
Vous gérez un site portfolio et souhaitez comprendre quels projets attirent le plus l'attention.
- Voyez quelles pages du portfolio obtiennent le plus de vues et depuis quels pays.
- Identifiez les principaux domaines référents qui génèrent du trafic vers votre site.
- Suivez les tendances quotidiennes et hebdomadaires sans dépendre de Google Analytics ou d'autres outils tiers.
Site orienté contenu avec blog
Vous publiez des articles et souhaitez mesurer leurs performances dans le temps.
- Comparez les pages vues sur différentes périodes (7 jours, 30 jours, 90 jours, 1 an).
- Identifiez les navigateurs et plateformes utilisés par votre audience afin d'optimiser la compatibilité.
- Utilisez la répartition par type d'appareil (ordinateur, mobile ou tablette) pour prioriser vos efforts de conception responsive.
Organisation soucieuse de la vie privée
Vous avez besoin de statistiques de base sans intégrer de scripts de suivi tiers ni déposer de cookies.
- Toutes les données restent sur votre propre serveur : aucun appel d'API externe pour le suivi (GeoIP est facultatif).
- L'unicité d'un visiteur est déterminée via une empreinte hachée, et non par des cookies ou des identifiants persistants.
- La rétention des données configurable purge automatiquement les anciens enregistrements.
Prérequis
- LaraClassifier / JobClass v19.0.0 ou ultérieur
- PHP 8.3+
- Le planificateur Laravel (la tâche cron du site) en fonctionnement, pour la purge nocturne des données et l'actualisation hebdomadaire des IP des robots
Installation
Étape 1 : Téléverser l'add-on
Allez dans Panneau d'administration → Extensions → Add-ons, cliquez sur Téléverser un add-on et déposez le fichier .zip de l'add-on dans la zone de téléversement (50 Mo maximum).
L'archive est extraite dans extensions/addons/stats/ et Site Statistics apparaît dans la liste, désactivé.
extensions/addons/stats/ par FTP ou SSH : son fichier addon.json doit se trouver directement dans ce dossier.
Ouvrez ensuite Panneau d'administration → Extensions → Add-ons. La page analyse extensions/addons/ à chaque chargement : l'add-on est donc listé immédiatement (le bouton Synchroniser lance la même analyse à la demande).
Étape 2 : Activer l'add-on
Cliquez sur Activer sur la carte Site Statistics. C'est un add-on payant : une fenêtre demande son code d'achat, qui est vérifié avant toute autre opération. Un code invalide est refusé dans la fenêtre et rien n'est modifié.
Une fois le code accepté, l'activation se fait en une seule passe : elle crée les tables de base de données de l'add-on (ses migrations), enregistre ses permissions, exécute ses seeders et publie ses assets publics. Rechargez la page pour voir sa nouvelle entrée dans la section Add-ons de la barre latérale d'administration.
Étape 3 : Configurer
Ouvrez Panneau d'administration → Statistiques depuis la section Add-ons de la barre latérale et configurez l'add-on : voir Configuration.
Code d'achat (clé de licence)
Site Statistics est vendu comme un produit distinct : il possède donc son propre code d'achat (clé de licence) : différent du code d'achat de l'application principale et de celui de chaque autre add-on. Il vous est demandé lorsque vous activez Site Statistics dans Panneau d'administration → Extensions → Add-ons.
Nos produits sont vendus sur trois plateformes. La manière dont vous recevez un code d'achat dépend de l'endroit où vous avez acheté le produit.
| Plateforme / Marketplace | Comment obtenir le code d'achat | Où le retrouver |
|---|---|---|
| Boutique bedigit.com Achat sur le site (Boutique) |
Généré automatiquement lorsque la commande est payée, puis envoyé par e-mail, soit dans un e-mail de licence dédié, soit dans l'e-mail de confirmation de commande. | Mon compte → Mes licences sur bedigit.com |
| Gumroad | Créé dès que Gumroad nous notifie la vente, puis envoyé dans un e-mail séparé, en plus du reçu Gumroad. | L'e-mail de licence, votre Bibliothèque Gumroad et Mon compte → Mes licences sur bedigit.com |
| Envato Market CodeCanyon |
Délivré par Envato, et non par nous, et jamais envoyé par e-mail : vous le téléchargez vous-même depuis votre compte Envato. | Compte Envato → Downloads → License certificate & purchase code |
1. Boutique bedigit.com (achat sur le site)
- Dès que le statut de paiement de la commande passe à Payée, une clé de licence est générée automatiquement pour chaque article sous licence de la commande (une clé par unité achetée : l'achat de 3 unités donne 3 clés distinctes).
- Elle est envoyée à l'adresse e-mail utilisée pour la commande, soit dans un e-mail de licence dédié, soit dans l'e-mail de confirmation de commande. Vérifiez votre boîte de réception et votre dossier spam / courrier indésirable.
- La clé reste disponible dans votre compte sous Mon compte → Mes licences. Les clés sont masquées dans la liste ; ouvrez la page de détail de la licence pour révéler et copier la clé complète, voir les domaines sur lesquels elle est activée, et désactiver un domaine pour libérer un emplacement d'activation.
- La facture correspondante se trouve sous Mon compte → Mes commandes.
2. Gumroad
- Un achat sur Gumroad génère deux e-mails distincts : le reçu Gumroad (envoyé par Gumroad, donnant accès aux fichiers) et un e-mail de clé de licence (envoyé par bedigit.com) qui contient votre code d'achat.
- L'e-mail de clé de licence est généré dès que Gumroad nous notifie la vente : il arrive donc normalement quelques secondes après le paiement. Là encore, vérifiez votre boîte de réception et votre dossier spam / courrier indésirable.
- Lorsque le produit Gumroad utilise la fonctionnalité de clés de licence propre à Gumroad, la même clé apparaît aussi dans votre reçu Gumroad et sous Bibliothèque → votre achat sur gumroad.com.
- Utilisez la même adresse e-mail sur bedigit.com que sur Gumroad : vos clés sont alors liées automatiquement à votre compte et listées sous Mon compte → Mes licences, même si vous vous inscrivez après l'achat. Vous pouvez aussi ajouter une clé Gumroad manuellement depuis Mon compte → Mes licences Gumroad.
3. Envato Market (CodeCanyon)
- Les codes d'achat Envato sont délivrés et fournis par Envato Market, jamais envoyés par e-mail par nos soins, il n'y a donc rien à chercher dans votre dossier de spam : vous récupérez le code depuis votre compte Envato.
- Connectez-vous à votre compte Envato / CodeCanyon, ouvrez la page Downloads, repérez l'article, puis choisissez License certificate & purchase code dans le menu déroulant Download. Le code est inscrit dans ce certificat.
- Un code d'achat Envato ressemble à
12345678-90ab-cdef-1234-567890abcdef(8-4-4-4-12 caractères). Il ne change jamais, et le renouvellement du support de l'article n'en génère pas de nouveau. - Article officiel Envato : Where Is My Purchase Code?
Configuration
Tous les paramètres sont gérés dans Panneau d'administration → Statistiques → Paramètres (section Add-ons de la barre latérale)
et enregistrés dans la table settings sous les clés ci-dessous. Une clé jamais enregistrée reprend la valeur par défaut
du fichier config/stats.php de l'add-on.
| Paramètre | Description | Par défaut |
|---|---|---|
stats_enabled |
Interrupteur principal pour activer ou désactiver le suivi des pages vues. Lorsqu'il est désactivé, aucune nouvelle donnée n'est collectée, mais les données existantes restent accessibles. | true |
stats_retention_days |
Nombre de jours de conservation des données de pages vues. Les enregistrements plus anciens sont purgés automatiquement chaque nuit à 3h00 (stats:purge). Définissez 0 pour conserver les données indéfiniment. |
90 |
stats_exclude_bots |
Tenir le trafic des robots détectés à l'écart des rapports. La détection combine les User-Agents de robots connus, les plages IP publiées des moteurs de recherche (flux Google et Bing actualisés chaque semaine) et les contrôles ci-dessous. | true |
stats_store_bots |
Conserver les visites des robots en base, marquées avec la raison de leur détection, pour que la page des paramètres affiche la part filtrée. Elles n'apparaissent jamais dans les rapports. Désactivé, elles sont écartées dès leur arrivée. | true |
stats_bot_detect_fake_browser |
Signaler les clients qui envoient un User-Agent de vrai navigateur sans les en-têtes que ce navigateur envoie toujours (Sec-Fetch-*, Accept-Language, Accept). |
true |
stats_bot_detect_datacenter |
Signaler les visites provenant des réseaux des fournisseurs de cloud et d'hébergement. | true |
stats_bot_extra_ip_ranges |
Réseaux supplémentaires à traiter comme trafic de centre de données, une plage CIDR (ou une IP seule) par ligne. AWS, Google Cloud et Azure ne sont pas filtrés par défaut. | (vide) |
stats_exclude_admins |
Exclure du suivi les utilisateurs administrateurs connectés. | true |
stats_exclude_my_ip |
Ne pas suivre les visites provenant de l'adresse IP que vous utilisez au moment d'enregistrer la page des paramètres. | false |
stats_exclude_ips |
Adresses IP (IPv4 ou IPv6) dont les visites ne sont jamais suivies, une par ligne. | (vide) |
stats_track_unique |
Suivre les visiteurs uniques à l'aide d'un hachage SHA-256 de l'IP + User-Agent (respectueux de la vie privée, sans cookies). | true |
stats_geoip_enabled |
Résoudre les adresses IP des visiteurs en pays et en villes grâce au pilote GeoIP choisi dans Panneau d'administration → Configuration → Paramètres → Localisation. La base MaxMind sert de solution de repli lorsque son fichier est présent sur le serveur. | true |
stats_per_page |
Nombre de lignes affichées par page dans les tableaux de statistiques de l'administration (10, 15, 25, 50 ou 100). | 25 |
stats_utm_tracking_enabled |
Activer la capture automatique des paramètres UTM (source, medium, campaign, term, content) des URL entrantes. | true |
config/stats.php fournit les valeurs par défaut. Les paramètres en base de données
(enregistrés via le panneau d'administration) ont toujours la priorité sur les valeurs du fichier de configuration.
Variables d'environnement
L'enregistrement d'une page vue est confié à une tâche en file d'attente exécutée après l'envoi de la réponse. Deux clés .env
optionnelles déterminent où va cette tâche :
STATS_QUEUE_CONNECTION: la connexion de file d'attente à utiliser (par défaut : la connexion par défaut de l'application). Avecdatabaseourediset un worker de file d'attente actif, les écritures quittent entièrement le processus web.STATS_QUEUE_NAME: le nom de la file (par défaut :default).
Admin : Tableau de bord Vue d'ensemble
La page Vue d'ensemble (Statistiques → Vue d'ensemble) offre un aperçu complet du trafic de votre site.
Toutes les vues acceptent un paramètre de requête ?period= pour changer la plage de temps.
Sélecteur de période
Un bouton déroulant disponible sur toutes les pages de statistiques vous permet de basculer entre les périodes :
| Valeur | Libellé |
|---|---|
7d | 7 derniers jours |
30d | 30 derniers jours (par défaut) |
90d | 90 derniers jours |
365d | 365 derniers jours |
Widget du tableau de bord
Un widget de synthèse du trafic est injecté automatiquement dans le tableau de bord principal de l'administration. Il affiche :
- Vues du jour : nombre total de pages vues pour la journée en cours
- Visiteurs uniques du jour : nombre de visiteurs uniques pour la journée en cours
- Vues de la semaine : nombre total de vues pour la semaine en cours
- Vues du mois : nombre total de vues pour le mois en cours
- Indicateur de tendance : variation en pourcentage par rapport à la veille
- Mini graphique : graphique du trafic sur 30 jours (ordinateur) / sur 7 jours (mobile)
Graphiques & indicateurs de la vue d'ensemble
La page complète de vue d'ensemble comprend :
- Cartes de synthèse : Total des vues et Visiteurs uniques pour la période sélectionnée
- Graphique du trafic : graphique à barres empilées montrant les vues et les visiteurs uniques au fil du temps
- Top 10 des pages : pages les plus consultées avec leur nombre de vues
- Top 10 des référents : principaux domaines référents générant du trafic
- Top 10 des pays : pays classés par nombre de vues
- Top 10 des navigateurs : répartition des navigateurs
- Répartition par type d'appareil : proportions ordinateur, mobile et tablette affichées sous forme de barres de progression
- Principales plateformes : répartition des OS (Windows, macOS, Linux, Android, iOS, etc.)
Admin : Rapports
Chaque rapport fournit une vue dédiée et paginée pour une dimension de données spécifique. Tous les rapports
prennent en charge le sélecteur de période et respectent le paramètre stats_per_page.
Rapport Pages
Route : Statistiques → Pages
Un tableau paginé de tous les chemins de pages suivis, affichant :
- Rang : position selon le nombre total de vues
- Chemin : le chemin de l'URL (ex.
/about,/portfolio/my-project) - Vues : nombre total de pages vues sur la période sélectionnée
- Visiteurs uniques : nombre de visiteurs uniques pour cette page
Rapport Référents
Route : Statistiques → Référents
Un tableau paginé des domaines référents, affichant :
- Rang : position selon le nombre total de hits
- Domaine : le domaine référent (ex.
google.com,twitter.com) - Hits : nombre de visites référées
Rapport Pays
Route : Statistiques → Pays
Un tableau paginé des pays des visiteurs, affichant :
- Rang : position selon le nombre total de vues
- Pays : badge du code pays ISO + nom du pays
- Vues : nombre total de vues depuis ce pays
- Visiteurs uniques : visiteurs uniques depuis ce pays
stats_geoip_enabled est défini sur true
et que la bibliothèque GeoIP du cœur est correctement configurée.
Rapport Villes
Route : Statistiques → Villes
Un tableau paginé des villes des visiteurs, avec un filtre par pays et une recherche de ville, affichant :
- Rang : position selon le nombre total de vues
- Ville : le nom de la ville
- Pays : le pays auquel appartient la ville
- Vues : nombre total de vues depuis cette ville
- Visiteurs uniques : visiteurs uniques depuis cette ville
L'action Pages vues d'une ligne liste les pages visitées depuis cette ville. Comme le rapport Pays, il nécessite que la GeoIP soit activée et configurée.
Rapport Navigateurs
Route : Statistiques → Navigateurs
Un tableau paginé des navigateurs détectés, affichant :
- Rang : position selon le nombre total de vues
- Navigateur : nom du navigateur avec icône (Chrome, Safari, Firefox, Edge, etc.)
- Part : pourcentage du total des vues, affiché sous forme de barre de progression
- Vues : nombre total de vues pour ce navigateur
Rapport Plateformes
Route : Statistiques → Plateformes
Un tableau paginé des systèmes d'exploitation détectés, affichant :
- Rang : position selon le nombre total de vues
- Plateforme : nom de l'OS avec icône (Windows, macOS, Linux, Android, iOS, Chrome OS)
- Part : pourcentage du total des vues, affiché sous forme de barre de progression
- Vues : nombre total de vues pour cette plateforme
Admin : Mots-clés
La section Mots-clés (Statistiques → Mots-clés) vous éclaire sur la façon dont les visiteurs trouvent votre site grâce au suivi des paramètres UTM (campagnes marketing).
Suivi des paramètres UTM
Le suivi UTM capture automatiquement les paramètres de campagne marketing des URL entrantes. Lorsqu'un visiteur arrive
via une URL contenant des paramètres UTM (ex. ?utm_source=newsletter&utm_campaign=spring_sale),
les données sont enregistrées et affichées dans la section Mots-clés.
Paramètres suivis
| Paramètre | Description | Exemple |
|---|---|---|
utm_source |
Source du trafic (obligatoire pour que le suivi s'active) | google, newsletter, facebook |
utm_medium |
Support marketing | cpc, email, social |
utm_campaign |
Nom de la campagne | spring_sale, product_launch |
utm_term |
Terme de recherche ou mot-clé | web+design, laravel+cms |
utm_content |
Variante de publicité ou de lien (pour les tests A/B) | banner_v1, sidebar_link |
Rapports
Les données UTM sont disponibles dans deux onglets dédiés de la section Mots-clés :
- Termes UTM : affiche toutes les valeurs
utm_termsuivies avec le nombre de visites, les sources et les pages d'atterrissage - Campagnes UTM : affiche toutes les valeurs
utm_campaignsuivies avec le nombre de visites, les sources et les supports
La page de vue d'ensemble affiche également des cartes de synthèse avec le total des visites UTM et des visiteurs UTM uniques pour la période sélectionnée.
utm_source est présent dans l'URL, un enregistrement est créé dans la table stats_utm_visits
et les agrégats quotidiens sont mis à jour dans stats_utm_daily. Aucun cookie ni JavaScript n'est impliqué.
Admin : Paramètres
La page des paramètres (Panneau d'administration → Statistiques → Paramètres) est organisée en quatre onglets :
Suivi
- Activer le suivi : interrupteur principal pour démarrer/arrêter la collecte de données (les données existantes sont conservées)
- Suivre les visiteurs uniques : compter les visiteurs uniques grâce à un hachage SHA-256 de l'IP + User-Agent (sans cookies)
- Activer la détection du pays : résoudre les IP en pays avec le pilote GeoIP choisi dans Panneau d'administration → Configuration → Paramètres → Localisation
Confidentialité et filtrage
- Exclure les bots et robots : tenir le trafic des robots détectés à l'écart des rapports. L'onglet indique la date de dernière actualisation des flux d'IP des robots Google/Bing, avec des boutons pour consulter les plages en cache et les actualiser immédiatement.
- Conserver les visites robots : garder en base les visites filtrées, marquées avec leur raison. L'onglet affiche alors la part du trafic filtrée ces 7 derniers jours et les principales raisons.
- Détecter les faux navigateurs et Ignorer le trafic des centres de données : les contrôles comportementaux décrits plus haut.
- Plages d'adresses IP supplémentaires : plages CIDR supplémentaires à traiter comme trafic de centre de données, une par ligne.
- Exclure les administrateurs : ne pas suivre les utilisateurs administrateurs connectés
- Exclure mon adresse IP actuelle : ne pas suivre votre IP actuelle (relevée à l'enregistrement de la page)
- Exclure des adresses IP : une adresse IPv4 ou IPv6 par ligne
Les contrôles de robots ne s'appliquent qu'au nouveau trafic. Pour reclasser les pages vues déjà enregistrées et reconstruire les rapports,
exécutez php artisan stats:reclassify-bots --recompute --force sur le serveur (sans --force, la commande indique seulement
ce qu'elle modifierait). L'onglet se termine par une Note de confidentialité rappelant que l'add-on ne charge aucun
script tiers, ne dépose aucun cookie et hache les empreintes des visiteurs.
Gestion des données
- Rétention des données (jours) : liste déroulante pour choisir la durée de conservation (Illimitée, 30, 60, 90, 180, 365 ou 730 jours)
- Éléments par page : liste déroulante pour choisir la taille de la pagination (10, 15, 25, 50 ou 100 éléments)
Suivi UTM
Interrupteur pour activer ou désactiver la capture automatique des paramètres UTM des URL entrantes. Lorsqu'il est activé,
le middleware de suivi extrait utm_source, utm_medium, utm_campaign,
utm_term et utm_content des URL des visiteurs.
Mise à jour
Une mise à jour ne remplace que les fichiers de l'add-on. Ses tables et ses données, ses paramètres, son état d'activation et son code d'achat enregistré sont tous conservés : ne désactivez et ne supprimez pas l'add-on avant de le mettre à jour. Sauvegardez tout de même votre base de données au préalable.
Méthode 1 : Téléverser la nouvelle version (recommandé)
- Téléchargez le dernier fichier
.zipde l'add-on. - Allez dans Panneau d'administration → Extensions → Add-ons et cliquez sur Téléverser un add-on.
- Déposez le fichier
.zipdans la zone de téléversement. - Comme Site Statistics est déjà installé, une demande de confirmation affiche la version installée et la nouvelle. Cliquez sur Remplacer : le dossier
extensions/addons/stats/est remplacé par les nouveaux fichiers. Annuler la demande abandonne le téléversement.
Méthode 2 : Remplacer les fichiers à la main
- Par FTP ou SSH, supprimez le dossier
extensions/addons/stats/et envoyez le nouveau à sa place. Remplacez le dossier entier plutôt que de copier par-dessus, afin que les fichiers retirés par la nouvelle version ne subsistent pas. - Ouvrez Panneau d'administration → Extensions → Add-ons : la page relit
addon.jsonet la carte affiche le nouveau numéro de version.
Une fois les fichiers remplacés
Nouvelles tables ou colonnes. Lorsqu'une nouvelle version en ajoute, créez-les en exécutant php artisan migrate --force en SSH, ou sans SSH en cliquant sur Désactiver puis Activer sur la carte de l'add-on : l'activation exécute toutes les migrations en attente (et redemande le code d'achat). Vos données ne sont pas touchées dans les deux cas.
Si votre installation met en cache sa configuration ou ses routes (php artisan config:cache, route:cache), exécutez php artisan optimize:clear après la mise à jour.
Désinstallation
Éteindre un add-on sans rien perdre, c'est le désactiver : allez dans Panneau d'administration → Extensions → Add-ons, cliquez sur Désactiver sur la carte Site Statistics et confirmez.
- L'add-on n'est plus chargé : ses routes, ses vues, son entrée dans la barre latérale d'administration et ses pages publiques ne répondent plus.
- Ses tables de base de données et toutes les données qu'elles contiennent sont conservées, et ses fichiers restent dans
extensions/addons/stats/. Rien n'est supprimé. - Ses permissions et son code d'achat enregistré restent en base de données. Seule la suppression les efface.
- La désactivation est refusée tant qu'un autre add-on actif dépend de celui-ci : désactivez d'abord cet add-on.
Cliquez sur Activer sur la même carte pour le rallumer. Comme lors de la première activation, le code d'achat est redemandé et vérifié ; ensuite les migrations en attente sont exécutées, les assets republiés, et l'add-on reprend exactement là où il s'était arrêté.
Suppression
La suppression est définitive et détruit les données de l'add-on. Le bouton Supprimer n'apparaît que sur un add-on désactivé : la suppression se fait donc toujours en deux temps :
- Désactivez Site Statistics (voir Désinstallation).
- Cliquez sur Supprimer sur sa carte et confirmez la demande.
Le panneau d'administration, en une seule passe :
- exécute le hook de désinstallation de l'add-on, s'il en fournit un, tant que son code est encore sur le disque ;
- révoque les permissions déclarées dans son
addon.json; - annule ses migrations, ce qui supprime ses tables de base de données et toutes les lignes qu'elles contiennent, et purge ses entrées de la table
migrations, afin qu'une réinstallation ultérieure reparte de zéro ; - supprime ses assets publiés :
public/addons/stats/,public/vendor/stats/etstorage/app/public/addons/stats/; - supprime le dossier de l'add-on
extensions/addons/stats/; - supprime sa ligne dans la table
addons(le code d'achat enregistré disparaît avec elle) et vide le cache de l'application.
La suppression est refusée, avec un message explicatif et avant toute destruction, lorsque l'add-on est encore actif, lorsqu'un autre add-on actif en dépend, ou lorsque l'utilisateur du serveur web (PHP) ne peut pas supprimer extensions/addons/stats/. Dans ce dernier cas, donnez à cet utilisateur le droit d'écriture sur le dossier et sur son parent, puis réessayez.
Supprimer le dossier en FTP ou en SSH n'est pas équivalent : l'add-on est seulement éteint, et ses tables, ses entrées dans la table migrations et sa ligne addons restent en place. Utilisez plutôt Supprimer dans le panneau d'administration.
Dépannage
Aucune donnée n'est enregistrée
- Vérifiez que
stats_enabledest défini surtruedans Statistiques → Paramètres. - Vérifiez que l'add-on est activé dans Panneau d'administration → Extensions → Add-ons.
- Si vous êtes connecté en tant qu'administrateur, vérifiez que
stats_exclude_adminsn'est pas activé (ou testez dans une fenêtre de navigation privée). - Vérifiez que votre adresse IP n'est pas exclue (Exclure mon adresse IP actuelle ou la liste Exclure des adresses IP).
- La table
stats_page_viewsdoit exister : elle est créée à l'activation de l'add-on. - Si
STATS_QUEUE_CONNECTION(ou la file par défaut de l'application) pointe vers une vraie file d'attente, un worker doit être actif pour que les pages vues soient écrites.
Les données par pays sont absentes ou affichent “Inconnu”
- Vérifiez que
stats_geoip_enabledest défini surtrue. - Vérifiez que le pilote GeoIP est correctement configuré dans Panneau d'administration → Configuration → Paramètres → Localisation.
- Les IP locales/privées (127.0.0.1, 192.168.x.x, etc.) ne peuvent pas être résolues et apparaîtront comme inconnues.
- Si vous utilisez un pilote GeoIP basé sur une API, vérifiez que la clé d'API est valide et que les limites de requêtes n'ont pas été dépassées.
- En production, envisagez d'utiliser le pilote MaxMind Database (
maxmind_database) avec le fichierGeoLite2-City.mmdbpour des résolutions hors ligne fiables.
Le widget du tableau de bord ne s'affiche pas
- Le widget est déclaré par l'add-on comme widget du tableau de bord : assurez-vous que l'add-on est actif.
- Vérifiez que le widget n'a pas été masqué dans la personnalisation des widgets du tableau de bord.
- Vérifiez que l'utilisateur possède la permission
admin.stats.view.
Les pages de statistiques affichent “Aucune donnée disponible”
- Si l'add-on vient d'être installé, attendez qu'un peu de trafic front-end soit enregistré.
- Essayez de passer le sélecteur de période sur une plage plus large (ex. 90 jours ou 365 jours).
- Vérifiez si la rétention des données a purgé les anciens enregistrements : ajustez
stats_retention_dayssi nécessaire.
Le trafic des bots gonfle les statistiques
- Activez Exclure les bots et robots, Détecter les faux navigateurs et Ignorer le trafic des centres de données dans l'onglet Confidentialité et filtrage.
- Ajoutez les réseaux des visiteurs indésirables restants dans Plages d'adresses IP supplémentaires.
- Avec Conserver les visites robots activé, l'onglet affiche la part filtrée et ses principales raisons ; les colonnes
is_botetbot_reasondestats_page_viewspeuvent aussi être examinées. - Pour nettoyer le trafic enregistré avant l'activation d'un contrôle, exécutez
php artisan stats:reclassify-bots --recompute --force.
Les données UTM ne sont pas enregistrées
- Vérifiez que
stats_utm_tracking_enabledest défini surtruedans Statistiques → Paramètres. - Le suivi UTM requiert au minimum le paramètre
utm_sourcedans l'URL. Les URL sansutm_sourcesont ignorées. - Vérifiez que les URL contiennent des paramètres UTM valides :
?utm_source=test&utm_term=keyword. - Le suivi principal des statistiques doit également être activé (
stats_enabled) pour que le suivi UTM fonctionne.
Utilisation élevée de l'espace de stockage de la base de données
- Réduisez le paramètre
stats_retention_daysà une durée plus courte. - La tâche planifiée quotidienne à 3h00 purge automatiquement les anciennes données (
stats:purge). Assurez-vous que la tâche cron du site exécute le planificateur Laravel (php artisan schedule:runchaque minute). - La table
stats_page_viewsest celle qui grossit le plus vite. Les tables d'agrégats (stats_daily, etc.) sont beaucoup plus petites puisqu'elles stockent une ligne par dimension et par jour.
Préoccupations de performance en cas de trafic élevé
- Le middleware confie les écritures à une tâche en file d'attente lancée après l'envoi de la réponse : il n'ajoute aucune latence au chargement
des pages. Définissez
STATS_QUEUE_CONNECTIONsurdatabaseourediset faites tourner un worker pour sortir ce travail du processus web. - Toutes les requêtes de statistiques utilisent les tables d'agrégats dotées d'index appropriés, et non la table brute
stats_page_views. - Pour les sites à très fort trafic, envisagez de réduire la rétention à 30 jours et d'utiliser le pilote GeoIP MaxMind hors ligne afin d'éviter les appels d'API externes.
Site Statistics v1.0.5 : un add-on LaraClassifier / JobClass.
© BeDigit. Tous droits réservés.