Ladění nastavení Google Analytics

01. Srpen 2011
  •  
  •  

Nastavení Google Analytics na větších projektech může být docela složité. Zejména, pokud má člověk ambice hrát si s událostmi, uživateskými proměnnými a tak. Při implementaci nastavení je ale třeba ověřovat, jestli vše funguje jak má. Jedním způsobem (který jsem taky používal) je sledovat změny v reportech Google Analytics. Google analytics zpracovávají data až po několika hodinách. Ladění nastavení tímto způsobem může pak být práce na několik příjemně strávených dní. Tím nechci říct, že není třeba v reportech nastavení kontrolovat – to ne. Toto je ale vhodné až jako finální ověření správnosti. Pokud chceme pracovat v reálném čase, je třeba použít nějaký jiný způsob ověřování.

Jak GA měření funguje

Google Analytics jsou založené na tagování – do stránky je vložen javascriptový kód. Ten pak pro každou zaznamenávanou stránku či událost odešle HTTP požadavek pro nahrání získání obrázku ze serveru Googlu. Důležité je, že tento požadavek obsahuje parametry s údaji o uživateli, jeho nastavení prohlížeče, zdroje a vůbec se vším, co pak můžeme vidět v reportech. Parametry jsou kompletně popsané v dokumentaci GA. Při ladění je vhodné použít zaměřit se právě na tyto HTTP pořadavky a jejich parametry.

GA Debug

Google si uvědomil, že je třeba nastavení ladit. Proto vytvořil alternativní knihovnu pro Analytics, která umožňuje logování zpracovávaného nastavení do konzole prohlížeče. Konzole bývá standardní součástí nástrojů pro vývojáře, které jsou součástí většiny prohlížečů. Jak se k nástrojům dostat popisuje tabulka.

Prohlížeč Zobrazení konzole Poznámka
Firefox Ikonka Firebugu vpravém dolním rohu prohlížeče Je třeba mít Firebug nainstalovaný
IE 9 Nástroje pro vývojáře nebo klávesou F12
Opera Stránka -> Nástroje pro vývojáře -> Opera Dragonfly Klávesová zkratka Ctrl + Shift + I
Chrome Nástroje -> Nástroje pro vývojáře

Při ladění je třeba nahradit zdroj javascriptové knihovny GA jiným – /ga.js je třeba nahradit /u/ga_debug.js. Ověřit, jestli se knihovna nahrává správně lze (překvapivě) pomocí výše uvedených nástrojů – v panelu síť. Požadavek musí vracet buď kód 200 OK, nebo 304 Not Modified.

Ověření nahrávání knihovny ga_debug.js v Firebugu

Google také vydal rozšíření pro Chrome, které simuluje funkci knihovny GA debug bez úprav kódu. Plugin lze aktivivat/deaktivovat tlačítkem vpravo nahoře. Tato knihovna funguje pouze pro asynchronní syntaxi kódu. Po úpravě kódu se v konzoli zobrazí v konzoli všechny parametry předávané metodě push. Výsledek v Chrome může vypadat jako na obrázku níže. Lze tak jednoduše získat představu o tom, co se vlastně děje.

Povolení GA debug módu v Chrome

GA debug ve Chrome
GA debug ve Firefoxu + Firebug

Další věcí, kterou je třeba zkontrolovat, je odesílání požadavku na Google server. Požadavky odesílané prohlížečem je možno zobrazit pomocí stejného nástroje – Firebugu, vývojářských nástrojů pro chrome apod. Stačí jen přepnout záložku na Síť (resp. network). Pro Firefox a Firebug pak odesílané požadavky mohou vypadat takto:

Odesílání GA requestu ve Firefox + Firebug

Jak je uvedeno dříve – význam jednotlivých parametrů je v dokumentaci GA. Pro jednodušší práci jsem také implementoval parser, díky kterému je práce s requesty snažší. Zbývá ještě podotknout, že knihovna GA debug loguje do konzole prováděné akce, odesílání požadavků zůstává funkční. To může být výhodou – lze kontrolovat kompletní nastavení GA včetně požadavků, i nevýhodou. Tento způsob nemusá být vhodný např. pro fungující weby, které vykazují malé množství konverzí. Několika pokusy o nastavení v konverzním trychtýři může ovlivnit nastavení za dlouhou dobu.

Vlastní alternativa

Na projektech, které ještě nebyly nasazeny na produkční prostředí používám vlastní skriptík pro ladění – ga_console.js. Jeho jediným smyslem je přetížení metody _gaq.push a logování jejích parametrů do konzole. K odesílání requestu na Google server tak vůbec nedochází. Díky tomu si můžu hrát s nastavením Google analytics a donekonečna provádět konverze a nikomu to nebude vadit.

ga_console.js

Jediné, co je potřeba udělat, je inclutovat tento script do stránky, např. pomocí direktivy

<script type="text/javascript" src="http://www.sabatka.net/wp-content/uploads/tools/ga_console.js"></script>

Všechny akce předané metodě push pak budou logovány do konzole a je možné je takto kontrolovat.

Co je vhodné kontrolovat

Postup, který se mi osvědčil při ladění analytics je asi tento:

  • Správná hodnota GATC.
  • Správné nastavení domainName – je-li nastavena špatně, nejsou data započítána.
  • Modifikace hodnot cookies – měly by nastat pouze při zobrazení první stránky. Pokud je na stránce více GA měřicích účtů, může dojít při špatné konfiguraci k přepisování hodnot cookies, což samozřejmě znehodnotí měřená data.
  • Měření pageviews – je-li na každé stránce odesílán požadavek. V případě, že vytváříte nějaké virtuální pageviews, je vhodné ověřit i jestli je adresa správná.
  • Měření událostí – jsou-li na stránce nějaké nastaveny.
  • Nastavení uživatelských proměnných – mají-li být nějaké nastavovány.
  • Odesílání požadavku na server Google – jestli je nějaký vůbec odesílán.

Pořadí se samozřejmě mírně liší v závislosti na projektu a řešeném problému. Jednotlivé body ale kontroluji vždy. Přiji všem, aby jejich GA kód byl čistý a debugovaný. Nechť vás provází síla!

Přidat komentář