web-dev-qa-db-fra.com

Pouvez-vous tester Google Analytics sur une adresse localhost?

Je dois tester mon nouveau compte GA sur mon ordinateur local.

Cela fonctionnera-t-il simplement en copiant l'extrait standard fourni par Google sur la page?

Je ne veux pas passer 24 heures à attendre de voir si cela fonctionnera ou non.

254
edwardmlyte

Cette question reste valable aujourd'hui, mais la technologie a changé. L'ancien suivi Urchin est obsolète et obsolète. Le nouveau code de suivi Google Analytics asynchrone utilise un code légèrement différent pour obtenir les mêmes résultats.

Google Analytics Classic - Syntaxe asynchrone - ga.js

La syntaxe actuelle pour définir le domaine de suivi sur none sur google analytics se présente comme suit:

_gaq.Push(['_setDomainName', 'none']);

Google Analytics lancera alors la demande de suivi _utm.gif sur localhost. Vous pouvez le vérifier en ouvrant les outils de développement dans votre navigateur préféré et en regardant les requêtes du réseau lors du chargement de la page. Si cela fonctionne, vous verrez une requête pour _utm.gif dans la liste des requêtes réseau.

Mise à jour 2013 pour Universal Analytics - analytics.js

Google a publié une nouvelle version de l'analyse appelée "Universal Analytics" (fin 2012 ou début 2013). Au moment où j'écris, le programme est toujours en version bêta. Le code ci-dessus est donc toujours recommandé pour la plupart des utilisateurs possédant des installations existantes de Google Analytics.

Toutefois, pour les nouveaux développements utilisant le nouveau code analytics.js, le = Google Analytics, Configuration avancée - Documentation de suivi Web montre que nous pouvons tester Universal Analytics sur localhost avec ce nouveau code:

ga('create', 'UA-XXXX-Y', {
  'cookieDomain': 'none'
});

Consultez la documentation liée pour plus de détails sur la configuration avancée d'Universal Analytics.

Mise à jour 2019

Les balises de site globales - gtag.js et Universal Analytics - analytics.js détecteront automatiquement localhost. Vous n'avez pas besoin de modifier la configuration.

Si gtag.js détecte que vous utilisez un serveur localement (par exemple, localhost), il définit automatiquement le cookie_domain sur 'none'.

- developers.google.com

322
BenSwayne

Mis à jour pour 2014

Ceci peut maintenant être réalisé en définissant simplement le domaine sur none.

ga('create', 'UA-XXXX-Y', 'none');

Voir: https://developers.google.com/analytics/devguides/collection/analyticsjs/domains#localhost

59
brent

J'ai eu le même problème, et toutes les solutions n'ont pas fonctionné jusqu'à ce que je fasse deux choses:

Code évident:

var _gaq = _gaq || [];
_gaq.Push(['_setAccount', 'UA-XXXXXXXXX-X']);
_gaq.Push(['_setDomainName', 'none']);
_gaq.Push(['_setAllowLinker', true]);   
_gaq.Push(['_trackPageview']);

ET

J'ai ajouté localhost un autre nom de domaine complet (FQDN). Je l'ai fait sur le système Windows en éditant:

C:\Windows\System32\drivers\etc\hosts

fichier, et je mets dans ce qui suit:

127.0.0.1   my.domain.org

Puis je suis allé à l'adresse http://my.domain.org/WebApp qui sert une page avec Google Analytics JS inclus.

Si vous êtes sous unix, éditez/etc/hosts pour le même résultat.

Il pense que Google devrait mettre la configuration Intranet dans la GA FAQ. Ils disent simplement que vous avez besoin de la FQDA. Oui, vous le faites, mais pas pour qu’ils puissent vous accéder, vous devez simplement avoir l’attribut Host dans la requête HTTP.

Je pense qu'une autre raison pour FQDN est COOKIES! Les cookies sont utilisés pour suivre les données et si vous n'avez pas de nom de domaine complet, le cookie ne peut pas être configuré et le code JS s'arrête et ne reçoit pas le gif.

15
Uros Mesaric

Maintenant, la réponse à votre question est oui, cela fonctionnera simplement en copiant l'extrait de code standard. Selon documentation , le fragment de code standard comprend maintenant la configuration automatique du domaine de cookie: ga('create', 'UA-XXXXX-Y', 'auto'); où le domaine de cookie est automatiquement déterminé.

De plus, si analytics.js détecte que vous exécutez un serveur localement (par exemple, localhost), il définit automatiquement cookieDomain sur "none".

12
mert

Réponse pour 2019

La meilleure pratique consiste à configurer deux propriétés distinctes pour votre développement/transfert et vos serveurs de production. Vous ne voulez pas polluer vos données Analytics avec test, et la configuration de filtres n’est pas agréable si vous êtes obligé de le faire.

Cela étant dit, Google Analytics a maintenant suivi en temps réel, et si vous souhaitez suivre des campagnes ou des transactions, le décalage est de environ 1 minute jusqu'à ce que les données s'affichent sur la page. , tant que vous sélectionnez le jour actuel.

Par exemple, vous créez Site et Site Test, et chaque code ha UA-XXXX-Y .

Dans la logique de votre application, où vous desservez le code d'analyse JavaScript, vérifiez votre environnement et utilisez le site pour la production UA-XXXX-Y , ainsi que pour le transfert et le développement. utilisez celui du site Test.

Vous pouvez avoir cette configuration jusqu'à ce que vous connaissiez les détails de GA, puis la supprimer ou la conserver si vous devez apporter des modifications constantes (que vous testerez tout d'abord sur le développement/la mise en scène).

Source: expérience personnelle, divers articles.

11

Cela fonctionnera si vous utilisez une adresse IP ou définissez le domaine sur aucun. Détails ici:

http://analyticsimpact.com/2011/01/20/google-analytics-on-intranets-and-development-servers-fqdn/

6
Ophir Prusak

Un outil plus simple pour surveiller les balises de suivi consiste à utiliser l'extension Chrome (probablement disponible ou l'équivalent pour les autres navigateurs) - Assistant Google Tag. Ceci indiquera les balises activées. , quels problèmes il a trouvés, et même des choses comme les valeurs du commerce électronique pour une lecture facile. Fonctionne également avec Google Tag Manager et peut gérer plusieurs jeux de balises sur la page.

4
JezC

Je veux juste ajouter à ce qui a été dit jusqu'à présent, cela peut économiser beaucoup de maux de tête, vous n'avez pas besoin d'attendre 24 heures pour voir si cela fonctionne, oui l'aperçu total prend 24 heures, mais dans l'onglet Rapports, il y a un lien sur le côté gauche du résultat en temps réel et il indiquera si quelqu'un visite actuellement votre site, je n'ai pas eu à définir 'cookieDomain': 'none' pour que cela fonctionne sur localhost, mon réglage est sur 'auto' et cela fonctionne très bien (j'utilise MVC 5), en plus de cela, j'ai ajouté le script à la fin de la balise head google déclaré dans cette page :

Collez votre extrait (inchangé, dans son intégralité) dans chaque page Web que vous souhaitez suivre. Collez-le immédiatement avant la balise </head> de fermeture.

ici est plus d'informations sur la façon de vérifier pour voir si l'analyse fonctionne correctement.

3
Deckard

Suite de la réponse de Tuong Lu Kim:

En supposant:

ga('create', 'UA-XXXXX-Y', 'auto');

... si analytics.js détecte que vous utilisez un serveur localement (par exemple, localhost), il définit automatiquement cookieDomain sur 'none'. .. .

Extrait:

La configuration automatique du domaine de cookie définit le cookie _ga sur le domaine de niveau le plus élevé possible. Par exemple, si l'adresse de votre site Web est blog.example.co.uk, analytics.js définira le domaine de cookie sur .example.co.uk. De plus, si analytics.js détecte que vous exécutez un serveur localement (par exemple, localhost), il définit automatiquement cookieDomain sur 'none'.

L'extrait de suivi JavaScript recommandé définit la chaîne "auto" pour le champ cookieDomain:


Source: https://developers.google.com/analytics/devguides/collection/analyticsjs/cookies-user-id#automatic_cookie_domain_configuration

3

Je suis tombé sur ce problème récemment et j’ai trouvé utile d’explorer la nouvelle documentation de Google sur débogage Analytics . L’envoi d’informations de suivi à Google Analytics ne lui importait pas vraiment; je voulais simplement m'assurer que les événements se déroulaient correctement et les outils de débogage me fournissaient les informations dont j'avais besoin. YMMV, je me rends compte que ne répond pas exactement à la question.

1
AndrewSouthpaw

Après avoir passé environ deux heures à essayer de trouver une solution, j'ai réalisé que des bloqueurs de blocage bloquaient l'appel de GA. Une fois que je les ai éteints, j'étais prêt à partir.

1
Christoph Anderson

Pour ceux qui utilisent Google Tag Manager pour s’intégrer aux événements Google Analytics, vous pouvez faire ce que les gars ont mentionné pour définir l’indicateur de cookies sur aucun de GTM lui-même.

enter image description here

ouvrez GTM> variables> variables google analytics> et définissez la balise cookies sur none

0
Hasan Daghash