Vielleicht fragen auch Sie sich, wie letztendlich die Daten über das Logfile Ihres Webservers in Urchin gelangen? Nun, relativ einfach. Ist der Tracking Code und die Java-Script-Datei urchin.js
erst einmal in jeder Webseite integriert, sendet dieser einen sogenannten HTTP-GET Befehl an Ihren Webserver und ruft damit eine transparente, 1×1 Pixel große, GIF-Datei ab.
Das alleine würde aber nicht ausreichen, da der bloße Abruf einer Datei zwar im Logfile vermerkt wird, aber daraus noch keine Erkenntnisse über den Besucher gewonnen werden könnten. Daher hängt das Script an diesen Aufruf verschiedene Abfrage-Parameter an. Ähnlich wie in einem Shop-System werden die Parameter mit einem Fragezeichen (?) eingeleitet und mit dem Ampersand (&) verkettet (z. B. …/index.html?artikel=schuhe&groesse=43&farbe=braun).
Zunächst einmal klingt das aber recht abstrus: Zum Übertragen von Nutzerdaten werden Abfrage-Parameter angehängt? „Ich will doch gar nichts von dem Server“, werden Sie sagen. Stimmt! Aber das ist der Weg, wie die Informationen ungekürzt in das Logfile gelangen können.
Der Abruf eines jeden Elements, aus dem Ihre Webseite besteht, wird als separate Datenzeile im Logfile eingetragen. Dazu gehören CSS-Dateien genau so wie Java-Script-Dateien und auch Grafiken. Somit wird auch der Abruf des __utm.gif erfasst und erscheint im Logfile etwa so:
82.100.192.197 blog.webalytics.de - [21/Dec/2009:09:44:12 +0100] "GET /__utm.gif?utmwv=1&utmn=434929548&utmcs=UTF-8&utmsr=1280x1024&utmsc=32-bit&utmul=en-us&utmje=1&utmfl=10.0%20r32&utmcn=1&utmdt=webalytics%20blog&utmhn=blog.webalytics.de
&utmr=http://www.webalytics.de/&utmp=/"
Obwohl der URL in erster Linie hochgradig komplex erscheint, kann er dennoch einfach in seine Einzelteile zerlegt werden. Zunächst einmal ist da der Aufruf für __utm.gif, was sozusagen die Grundlage für alle Berichte in Urchin darstellt. Danach folgt ein sehr langer String mit Abfrageparametern. Jeder der Parameter enthält eine bestimmte Information, die dann zur Auswertung in den Berichten genutzt wird. Manche davon werden nur in bestimmten Fällen benutzt, andere kommen wiederum immer zum Einsatz.
Schauen wir uns in den folgenden beiden Abschnitten (Parameter für Seitenzugriffe & E-Commerce) einmal an, welche Variablen zum Einsatz kommen und welche Bedeutung sie letztendlich haben.
Die in der nachfolgenden Tabelle aufgeführten Parameter werden für jeden Seitenzugriff erfassten, sobald das __utm.gif abgerufen wird.
Variable | kurz für | Beschreibung | Beispiel |
utmcn | campaign new | Startet eine neue Kampagnensitzung. Verändert Kampagnen-Erhebungsdaten; initiiert aber keine neue Sitzung. Entweder utmcn oder utmcr ist bei einem beliebigen Abruf vorhanden. | utmcn=1 |
utmcr | campaign repeat | Weist einen wiederholten Kampagnenbesuch aus. Dieser Wert wird gesetzt, sobald ein wiederholter Klick auf den gleichen Link erfolgt. Entweder utmcn oder utmcr ist bei einem beliebigen Abruf vorhanden. | utmcr=1 |
utmcs | character set | Zeigt verwendeten Zeichensatz der Seite an. Manchmal gibt die Webseite keine Auskunft dazu, worauf der Wert dann auf „-“ gesetzt wird. | utmcs=UTF-8 |
utmdt | document title | Seitentitel in URL-codiertem Format. | utmdt=webalytics%20blog |
utmfl | flash | Gibt Auskunft über die auf dem Rechner eingesetzte Flash Version. | utmfl=10.0%20r32 |
utmhn | host name | Hostname in URL-codiertem Format | utmhn=blog.webalytics.de |
utmje | java enabled | Zeigt an, ob der Browser für Java aktiviert ist. „1“ bedeutet „ja“. | utmje=1 |
utmn | Eindeutige ID, die für jeden GIF-Abruf generiert wird. Dient dazu, das Caching der GIF-Datei zu verhindern. | utmn=434929548 | |
utmp | page | Seitenabruf der aktuellen Seite („/“ steht für die Startseite) | utmp=/ |
utmr | referral | Verweisseite als kompletter URL. | utmr=http://www.webalytics.de/ |
utmsc | screen color | Bildschirmfarbtiefe | utmsc=32-bit |
utmsr | screen resolution | Bildschirmauflösung | utmsr=1280×1024 |
utmul | user language | Browser-Sprache | utmul=en-us |
utmwv | which version | Version des Tracking Codes | utmwv=1 |
Handelt es sich bei der Website um einen Online-Shop oder ein sonstiges E-Commerce-System, werden zu jeder Transaktion mindestens zwei weitere Zeilen in das Logfile geschrieben: Eine Zeile für die Transaktion (oder den Vorgang) selbst und jeweils eine separate Zeile für jede verkaufte Position (Artikelzeile). Diese Parameter sind nur dann im __utm.gif enthalten, wenn eine Transaktion erfasst wird; für jede Position Ihrer Transaktion wird __utm.gif erneut abgerufen.
Eine Transaktionszeile könnte wie folgt aussehen:
82.100.192.197 shop.webalytics.de - [21/Dec/2009:09:45:12 +0100] "GET /__utm.gif?utmwv=1&utmt=tran&utmn=1831392004&utmtid=091222-081230&utmtst=Onlineshop
&utmtto=2295.00&utmtsp=0.00&utmttx=436.05&utmtci=Lampertheim&utmtrg=Hessen
&utmtco=Germany
Die Erläuterung zu den einzelnen Parametern finden Sie in der nachstehenden Tabelle:
Variable | kurz für | Beschreibung | Beispiel |
utmt | temporary | Spezielle Variable, der verschiedene Werte zugewiesen werden können (z. B. Ereignisse, Transaktionen, Elemente und benutzerdefinierte Variablen) | utmt=tran |
utmtci | transaction city | Stadt des Rechnungsempfängers | utmtci=Lampertheim |
utmtco | transaction country | Land des Rechnungsempfängers | utmtco=Germany |
utmtid | transaction ID | Transaktion- oder Vorgangsnummer | utmtid=091222-081230 |
utmtrg | transaction region | Bundesland oder Region des Rechnungsempfängers | utmtrg=Hessen |
utmtsp | transaction shipping | Versandkosten | utmtsp=0.00 |
utmtst | transaction store | Herkunft der Transaktion . Dient der Unterscheidung zwischen verschiedenen Affiliations. | utmtst=Onlineshop |
utmtto | transaction total | Gesamtsumme (netto) | utmtto=2295.00 |
utmttx | transaction tax | Umsatzsteuer (Gesamtwert) | utmttx=436.05 |
Eine Positionszeile könnte wie folgt aussehen:
82.100.192.197 shop.webalytics.de - [21/Dec/2009:09:45:12 +0100]"GET /__utm.gif?utmwv=1&utmt=item&utmn=575987983&utmtid=091222-081230&utmipc=URCHIN6SL&utmipn=Urchin
%20v6&utmiva=Software&utmipr=2295.00&utmiqt=1
Die Erläuterung zu den einzelnen Parametern finden Sie in der nachstehenden Tabelle:
Variable | kurz für | Beschreibung | Beispiel |
utmt | temporary | Spezielle Variable, der verschiedene Werte zugewiesen werden können (z. B. Ereignisse, Transaktionen, Elemente und benutzerdefinierte Variablen) | utmt=item |
utmipc | item product code | Artikel- oder Herstellernummer (auch SKU genannt) | utmipc=URCHIN6SL |
utmipn | item product name | Artikelbezeichnung | utmipn=Urchin%20v6 |
utmipr | item price | Einzelpreis des Artikels | utmipr=2295.00 |
utmiqt | item quantity | Artikelmenge | utmiqt=1 |
utmiva | item variation | Artikelvariationen oder Kategorien (z. B. groß, mittel, klein, rot, grün, blau, etc.) | utmiva=Software |
Sofern Sie den Mozilla Firefox einsetzen und dazu das Add-On „Live HTTP headers“ installieren, können Sie sich die einzelnen Zeilen auch im Live-Betrieb anschauen. Öffnen Sie dazu den Browser Firefox, klicken Sie dann auf das Menü „Extras“ (Tools), und danach auf den Menüpunkt „Live HTTP headers“. Ein weiteres Fenster öffnen sich und Sie wechseln dann auf die Registerkarte „Generator“. Stellen Sie sicher, dass die Checkbox „request“ markiert ist und rufen Sie dann die gewünschte Webseite im Firefox auf.
Sobald die Seite anfängt zu laden, werden im Fenster „Live HTTP headers“Einträge ersichtlich. Ist der Ladevorgang abgeschlossen, suchen Sie einfach nach Einträgen, die mit „#request# GET http://…/__utm.gif?…“ beginnen. Diese können Sie dann einfach markieren, kopieren und in einem beliebigen Editor (z. B. Notepad) betrachten.
Durch die vorgenannten Erläuterungen haben Sie nun die Möglichkeit, und herauszufinden, warum in Urchin beispielsweise keine Daten angezeigt werden. Mit diesen Kenntnissen können Sie leicht ermitteln, wo in Ihrem System oder E-Commerce die Ursache für fehlende Transaktionsauswertungen liegt und können diese Probleme einfacher beseitigen.
Ich wünsche viel Spaß bei dieser Art von Forensik 🙂 – Diskussionen und Kommentare jederzeit willkommen.
Ihr Holger Tempel
Schreibe einen Kommentar