2013-04-13 1 views
28

Ich richte den neuen Google Analytics-Tracking-Code ein.Warum bekomme ich 'Speicher nicht verfügbar. Abbruch des Treffers. mit Google Analytics?

<script> 
     (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 
     (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 
     m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 
     })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 

     ga('create', 'MYUACODE', 'MYDOMAIN'); 
     ga('send', 'pageview', { 
      'page': '/setup', 
      'title': 'Setup Page' 
     }); 

    </script> 

Ich habe das in meinem Kopf-Tag bekam wie Google Ihnen sagen Offensichtlich MYUACODE und MYDOMAIN zu tun, sind die realen Variablen in meiner Seite :)

Allerdings, wenn ich ausführen, um diese mit Google Chrome und ich schalten sie den Google Analytics Debug-Erweiterung, erhalte ich die folgende Meldung:

Registered new plugin: "linker"  analytics_debug.js:5 
Creating new tracker: t0    analytics_debug.js:5 
New visitor. Generating new clientId analytics_debug.js:5 
Storage not available. Aborting hit. analytics_debug.js:5 

es scheint richtig zu feuern und startet die Einstellungen vorgenommen haben, aber dann heißt es Lagerung nicht verfügbar und es scheint nichts zu Google zu kommen.

Wenn ich jetzt den ganzen Code entferne und zum ursprünglichen Google Tracking-Code zurückkehre, funktioniert es gut, ich kann einfach nicht scheinen, dass dieser neue Stil richtig ausgelöst wird.

Irgendwelche Gedanken? Hilfe? Vielen Dank im Voraus

Antwort

35

Ich hatte die gleiche Fehlermeldung. Es scheint damit zu tun zu haben, den Cookie nicht korrekt setzen zu können. In meinem Fall ist es passiert, als ich localhost getestet habe und ich meine cookieDomain nicht auf none gesetzt habe.

Sie möchten etwas wie das folgende versuchen und sehen, ob es funktioniert. Ich bin mir nicht sicher, ob die Methode, Ihre Domain zu übergeben, funktioniert.

ga('create', 'MYUACODE', { 
    'cookieDomain': 'none' 
}); 
+1

Ich habe das gleiche Problem. Nur der Unterschied ist, dass ich nicht lokal bin, d. H. Ich bin auf www.foobar.com und das Erwähnen der gleichen Domain im Code funktioniert immer noch nicht. –

0

Ich denke, das Problem war mit einer anderen Erweiterung in Chrom. Ein leeres Profil (--user-data-dir =/tmp/foo) löste das Problem für mich.

1

Spielen mit 'MYDOMAIN' löste das Problem für mich

ga('create', 'MYUACODE', 'MYDOMAIN'); 

i überhaupt 'MYDOMAIN' entfernt und Endivie es wie

ga('create', 'MYUACODE'); 

die Seite neu gestartet, fügte dann , 'MYDOMAIN' n wieder und dieses arbeitete

Das zweite Mal, das ich mit dem Problem konfrontiert wurde, löste es das Problem, 'MYDOMAIN' zu der Domäne zu ändern, die ich die Seite geladen habe (von Produktion domai n zu meiner Hosting-Domain)

1

Eine weitere Möglichkeit ist, eine Domain zu Ihrer Host-Datei hinzuzufügen und diese dann anstelle von localhost zu verwenden. Mine wie folgt aussieht:

127.0.0.1 localhost mytest.com

Verwenden mytest.com anstelle von localhost und Sie werden Ihre Informationen zu überprüfen und Sie werden alle Optionen zum ga erstellen Methodenaufruf nicht hinzufügen.

13

Google Analytics verwendet, um den Tracking-Code mit dem Host-Namen hart codiert in der create-Methode zu generieren, die diesen Fehler beim Testen auf einem anderen Hostnamen verursachen könnte. Wenn GA nun den Tracking-Code generiert, verwendet er

ga('create', 'UA-XXXXXXXX-X', 'auto'); 

, der den Wert für cookieDomain automatisch ermittelt.Das Ändern des hardcodierten Hostnamens in 'auto' in diesem Methodenaufruf hat dieses Problem für mich auf mehreren Websites behoben, bei denen der alte Tracking-Code generiert wurde.

5

Tatsächlich funktionieren die meisten der angebotenen Optionen. Sie sollten jedoch alle in verschiedenen Szenarien angewendet werden. Eine vollständige Liste finden Sie unter GoogleA's Domains & Cookies - Web Tracking (analytics.js).

Ich behandelte die Situation meines Kunden ein wenig anders, um mit Sprachvarianten umzugehen, von denen eine auf einer separaten Domäne war. Nachfolgend finden Sie die Domain durch den Tracker call gefolgt sehen:

  1. en.client.en, ga ('schaffen', 'UA-XXXXXXXX-X', 'client.en');
  2. fr.client.com, ga ('erstellen', 'UA-XXXXXXXX-X', 'client.com');
  3. de.client.com, ga ('erstellen', 'UA-XXXXXXXX-X', 'client.com');
  4. xx.client.com, ga ('erstellen', 'UA-XXXXXXXX-X', 'client.com');

Der Grund habe ich für die Domain-Parameter verwendet nicht

ga ('schaffen', 'UA-XXXXXXXX-X', 'auto')

oder 'none' lag daran, dass diese Konfiguration Subdomänen wahrscheinlich nicht verfolgt. Mein Kunde möchte wahrscheinlich Conversions nach Land/Sprache anzeigen. Das Konto verfügt daher über die gruppierte Ansicht (oben konfiguriert) sowie über einzelne Ansichten, die nach Subdomain (Land/Sprache) gefiltert sind. In der Google-Dokumentation heißt es eindeutig unter Automatische Cookie Domain-Konfiguration:

analytics.js fehl ein Cookie auf co.uk zu schreiben, aber auf example.co.uk gelingen. Da ein Cookie erfolgreich auf einer höheren Level-Domain geschrieben wurde, wird www.example.co.uk übersprungen.

und unter Einstellung Cookies auf localhost (wo cookie auf 'none' gesetzt ist):

Hinweis: Dies wird ein Host nur Cookie-Domain gesetzt. Der Cookie wird nicht an irgendwelche Subdomains gesendet. Der Internet Explorer folgt diesem Muster jedoch nicht .

Hoffe das hilft.