Urchin 7
Alle Artikel bezüglich Urchin 7
Alle Artikel bezüglich Urchin 7
Bevor wir Urchin am 28.03.2012 zu Grabe tragen, hier noch die finalen Änderungen der letzten Version (7.2.00), die wir auch dringend empfehlen, zu installieren bzw. zu aktualisieren.
Sie können sich die aktuellste Version hier herunterladen:
In meinem Artikel Urchin Version 7.0.00 – Installation unter Linux habe ich am Beispiel eines CentOS-Systems beschrieben, wie Sie Urchin installieren. Die Beschreibungen sind aber nur auf RedHat-basierte Systeme ohne Modifikationen übertragbar. Für Debian und Debian-basierte Systeme sind einige wenige Besonderheiten zu beachten.
Wichtig: An dieser Stelle möchte ich noch einmal explizit darauf hinweisen, dass bei der Ausführung des Urchin-Installationsskriptes die englische Sprache zu wählen ist.
Linux ist von Haus aus ein System, das für den Kernel monarchisch geführt ist, ansonsten aber völlig anarchisch ist. Daher darf niemand erwarten, dass ein mehrsprachiges Installations-Skript auch tatsächlich unter jeder x-beliebigen Randbedingung funktioniert. Der Kernel unterstützt garantiert ASCII-Zeichen. Die Unterstützung der anderen Zeichensätze obliegt den Distributionen und da kocht jede ihr eigenes Süppchen. Die einzige Sprache, die nur mit ASCII-Zeichen auskommt und somit die Installation reibungslos ermöglicht, ist nun einmal Englisch. Alle anderen Sprachen können funktionieren, müssen aber nicht.
Im Installationsskript von Urchin wird bei der Frage nach der Gruppe ein anderer Default angezeigt, nämlich nogroup statt nobody. Dieser Default ist ebenfalls zu übernehmen. Und es existiert im Installationsskript noch eine zweite Abweichung: unter Debian-basierten Systemen lautet der MySQL-Socketpfad in der Regel /var/run/mysqld/mysqld.sock.
Nach der Installation von Urchin verhält sich Urchin unter den Debian-basierten Systemen völlig anders, als unter RedHat-basierten Systemen. Auf RedHat-basierten Systemen läßt sich Urchin problemlos über den Befehl /usr/local/urchin/bin/urchinctl start starten und die Installation als Autostartservice ist eher optional. Auf Debian-basierten Systemen muss Urchin zwingend als Autostartservice installiert werden, bevor alle Urchin-Services gestartet werden können. Die Urchin-Webseite ist zwar funktional, aber Urchin verarbeitet nichts! Um dies zu ändern, muss zunächst die Datei /usr/local/urchin/util/urchin_daemons geändert werden. Dazu verwenden Sie unter Linux den Editor „vi“ und geben auf der Kommandozeile den Befehl
vi /usr/local/urchin/util/urchin_daemons
ein. Damit wird der Editor gestartet und der Dateiinhalt angezeigt. Bewegen Sie den Cursor in die erste Leerzeile, fügen Sie den „INIT INFO“-Block, wie nachfolgend abgebildet ein und speichern Sie die Änderungen:
#!/bin/sh # chkconfig: 2345 95 15 # description: Starts and stops the Urchin daemons ### BEGIN INIT INFO # Provides: urchin_daemons # Required-Start: $all # Required-Stop: $all # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Starts and stops the Urchin daemons # Description: Controls the Urchin daemons "urchind", .urchincpcd # and multiple "urchinwebd". ### END INIT INFO # INSTALLDIR should be automatically set in this script when Urchin is
Nachdem Sie die Datei modifiziert haben, müssen Sie diese noch nach /etc/init.d/ kopieren und ausführbar machen, bevor sie als Service installiert werden kann. Für diese letzten Schritte verwenden Sie ab Debian 6 folgende Befehle, die Sie als root oder mit root-Rechten ausführen müssen:
cp /usr/local/urchin/util/urchin_daemons /etc/init.d/ chmod +x /etc/init.d/urchin_daemons insserv /etc/init.d/urchin_daemons
Bei älteren Debian-Versionen oder anderen Distributionen müssen Sie den letzten Befehl möglicherweise gegen einen anderen austauschen. Den entsprechenden Befehl finden Sie in der Dokumentation der jeweiligen Distribution oder über die Google-Suche heraus.
Nun müssen Sie Ihr System nur noch neu starten und Urchin wird automatisch mit allen erforderlichen Diensten (Services oder Daemons) gestartet.
Viel Erfolg bei der Installation!
Ihr webalytics-Technikteam
Im ersten Teil der Reihe, „Reguläre Ausdrücke in Google Analytics und Urchin„, habe ich Ihnen einen kurzen Überblick über die in Google Analytics und Urchin verwendbaren regulären Ausdrücke gegeben. Dabei wurde auch die Verwendung der Metazeichen Punkt, Backslash, Bindestrich und eckige Klammern erläutert.
In diesem Teil zeige ich Ihnen, wie Sie die Quantifizierung, Gruppierung und Alternative einsetzen.
Um nun nicht immer wieder das Metazeichen für eine Suche wiederholt eingeben zu müssen, finden Sie bei den regulären Ausdrücken Funktionen zur Quantifizierung.
Das Fragezeichen entspricht der Anzahl 0 oder 1 des unmittelbar davor stehenden Zeichens.
Beispiel:
Der folgende reguläre Ausdruck
17und4?
entspricht somit unter anderem den Zeichenketten
17und
17und4
aber nicht den Zeichenketten
17und5
17undA
Warum? Der reguläre Ausdruck setzt voraus, dass in der Zeichenkette die Ziffer 4, die unmittelbar vor dem Fragezeichen steht, einmal oder gar nicht vorkommen darf.
Das Pluszeichen entspricht der Anzahl 1 oder mehr des davor stehenden Zeichens.
Beispiel:
Der folgende reguläre Ausdruck
17und4+
entspricht somit unter anderem den Zeichenketten
17und4
17und44
17und444
aber nicht den Zeichenketten
17und
17unda4
Warum? Der reguläre Ausdruck setzt voraus, dass in der Zeichenkette die Ziffer 4, die unmittelbar vor dem Pluszeichen steht, einmal oder mehrmals vorkommen muss.
Der Asterisk entspricht der Anzahl 0, 1 oder mehr des davor stehenden Zeichens.
Beispiel:
Der folgende reguläre Ausdruck
17und4*
entspricht somit unter anderem den Zeichenketten
17und
17und4
17und44
17und444
Warum? Der reguläre Ausdruck setzt voraus, dass in der Zeichenkette die Ziffer 4, die unmittelbar vor dem Asterisk steht, gar nicht, einmal oder mehrmals vorkommen darf.
Um nun nicht immer wieder das Metazeichen für eine Suche wiederholt eingeben zu müssen, finden Sie bei den regulären Ausdrücken Funktionen zur Wiederholung. Diese werden mit der Syntax {minimum,maximum(opt.)} deklariert.
Beispiel 1:
Der folgende reguläre Ausdruck
17und4{2}
entspricht somit ausschließlich der Zeichenkette
17und44
aber nicht den Zeichenketten
17und
17und4
17und444
17unda4
Warum? Der reguläre Ausdruck setzt voraus, dass in der Zeichenkette die Ziffer 4, die unmittelbar vor der öffnenden geschweiften Klammer steht, exakt zweimal vorkommen muss.
Beispiel 2:
Der folgende reguläre Ausdruck
17und4{1,3}
entspricht somit ausschließlich den Zeichenketten
17und4
17und44
17und444
aber nicht den Zeichenketten
17und
17und4444
17unda4
Warum? Der reguläre Ausdruck setzt voraus, dass in der Zeichenkette die Ziffer 4, die unmittelbar vor der öffnenden geschweiften Klammer steht, mindestens einmal und höchstens dreimal vorkommen darf.
Um eine gefundene Zeichenkette für die spätere Verwendung zwischenspeichern zu können, finden Sie bei den regulären Ausdrücken die Funktion zur Gruppierung. Diese findet durch die Verwendung von runden Klammern statt.
Beispiel:
Der folgende reguläre Ausdruck
([gG]oogle, inc\.)
entspricht somit den Zeichenketten
google, inc.
Google, inc.
und würde das Suchergebnis zwischen den runden Klammern für die spätere Verwendung zwischenspeichern.
Eine sehr hilfreiche Funktion innerhalb der regulären Ausdrücke ist die sogenannte Alternative. Die Syntax besteht aus dem Trennen mehrerer Alternativwerte durch ein Pipe-Symbol (|) und ist ganz einfach: wert1|wert2|wert3. Das würde dann bedeuten: Finde wert1 oder wert2 oder wert3.
Beispiel:
Der folgende reguläre Ausdruck
[gG]oogle, inc\.|[yY]ahoo, inc\.
entspricht somit den Zeichenketten
google, inc.
Google, inc.
yahoo, inc.
Yahoo, inc.
aber nicht den Zeichenketten
bing, inc.
Bing, inc.
Warum? Der reguläre Ausdruck setzt voraus, dass in der Zeichenkette die Zeichenfolge „Google, inc.“ oder „Yahoo, inc.“ enthalten sein muss. „Bing, inc.“ Ist keine Option. Dabei spielt es keine Rolle, ob der erst Buchstabe groß oder klein geschrieben wird.
Sie haben nun erfahren, wie Sie Quantifizierung, Gruppierung und Alternative einsetzen. Im dritten Teil dieser Reihe zeige ich Ihnen, wie Sie gezielt nach Zeichenketten am Anfang oder am Ende einer Zeile bzw. eines Feldes suchen können und welchen Vorteil Sie durch den Einsatz von Abkürzungen erfahren.
Da Urchin in der Version 7.0.00 nun seit einem halben Jahr auf dem Markt ist, wird es Zeit, ein paar Bugs zu beseitigen und zusätzliche Features zu integrieren. Das dachten sich wohl auch die Entwickler und haben mit der Version 7.1.00 nachgelegt. Nachfolgend erfahren Sie, welche Veränderungen in Urchin Version 7.1.00, die voraussichtlich in den nächsten zwei Wochen veröffentlich wird, zu erwarten sind.
Zunächst einmal wäre hier die Berichtsoberfläche zu erwähnen, in die nun verbesserte Übersetzungen für die deutsche und japanische Sprache eingeflossen sind. Gerade im deutschsprachigen Raum wird man sich darüber freuen, dass Begriffe wie „Dauerlink“ oder „Los geht’s“ endlich durch die richtigen Begriffe ersetzt wurden.
Die Erweiterung der rs2-Datei um ein separates Flag zur Steuerung der verfügbaren erweiterten Segmente sorgt zudem dafür, dass dieses Element nicht mehr genutzt werden kann, wenn die Verwendung an der entsprechenden Stelle nicht vorgesehen ist. Da die Metrik „Besuche“ in der Urchin Data API nicht vorhanden ist, wurde diese auch gleich im Editor für erweiterte Segmente entfernt.
Zusätzlich wurden die in Urchin integrierte Hilfe sowie verschiedene Artikel in der Online-Hilfe (Urchin Help Center) aktualisiert und können mit der Version 7.1.00 genutzt werden.l
Durch eine Sicherheitslücke in urchin.js war es Angreifern möglich, beliebige Cookies im Kontext einer Website zu schreiben, die Google Analytics oder Urchin Software einsetzt. Dieses Problem wurde mit der aktuellen Version der Datei urchin.js gelöst. Es muss lediglich die ursprüngliche Datei urchin.js durch die im Installationspaket von Urchin 7.1.00 enhaltenen Datei ersetzt werden. Alternativ kann auch der Tracking Code modifiziert werden, um die aktualisierte Datei von den Google Servern abzurufen (http://www.google-analytics.com/urchin.js).
Der Trackign Code von Google Analytics schreibt UTM Cookies als URL-codierte Zeichenkette in eine Variable mit dem Namen “utmcc”. Voherige Urchin-Versionen konnten mit diesen Werten nicht umgehen. Die korrekte Verwertung von Inhalten der Variable “utmcc” wurde nun integriert.
Nachdem die Verarbeitung eines großen „eingefrorenen“ Profils abgebrochen wurde, war Urchin nicht in der Lage, die Arbeit wieder aufzunehmen. Das war selbst nach einer Zeitspanne von 30 Minuten für Aufräumprozesse nicht möglich. Vielmehr musste die Urchin komplett neu gestartet werden. Ein weiteres Problem der Vorversion war, dass der Verarbeitungsstatus nicht aktualisiert wurde, sobald die Verbindung zur Urchin Konfigurationsdatenbank unter PostgreSQL während der Protokollverarbeitung unterbrochen wurde. Beide Probleme sind in Urchin 7.1.00 behoben.
Ausführliche Informationen zum Changelog finden Sie auf unserer Website unter:
http://www.webalytics.de/urchin-7/versionshistorie-changelog/version-7100/
Eventuell sind Ihnen die wenigen unter Microsoft Windows oder DOS verfügbaren Wildcards (* ? %) bekannt, mit deren Hilfe eingeschränkte Datei- bzw. SQL-Operationen durchgeführt werden können. Die sich hieraus ergebenden Möglichkeiten sind jedoch recht gering und erfordern weit mehr Flexibilität, wenn es darum geht, komplexe Datenbestände zu durchsuchen.
Aus diesem Grund nutzen Google Analytics und Urchin reguläre Ausdrücke. Damit werden auch umfangreiche Datenentsprechungen gefunden und ermöglichend zudem, gewünschte Aktionen auszuführen. Reguläre Ausdrücke können in Google Analytics bzw. Urchin wie folgt verwendet werden:
Doch dazu später mehr. Denn in diesem ersten Teil will ich Ihnen zunächst einen Überblick über die Notwendigkeit von regulären Ausdrücken vermitteln, sowie Sie mit den ersten beiden oft verwendeten Metazeichen bekannt machen.
Schauen Sie sich die folgende Tabelle einmal näher an. Sie werden bestimmt feststellen, dass es sich dabei um eine einfache Datenstruktur handelt.
Nr. | Artikel | Warengruppe | Farbe | Größe |
1 | T-Shirt | T-Shirt, Männer | grün | XL |
2 | T-Shirt | T-Shirt, Männer | gelb | L |
3 | T-Shirt | T-Shirt, Frauen | gelb-blau | XL |
4 | T-Shirt | T-Shirt, Frauen | blau | S |
5 | Sweatshirt | Sweatshirt, Männer | blau-rot | M |
6 | Sweatshirt | Sweatshirt, Frauen | rot | L |
Wenn Sie also aus dieser Tabelle die Datensätze selektieren sollen, deren Farbangabe den Kriterien „gelb“ und „gelb-blau“ entspricht, reichen die o.g. Kenntnisse völlig aus; Sie würden vermutlich nach „gelb*“ suchen und die Datensätze 2 und 3 als Ergebnis präsentiert bekommen.
Was nun aber, wenn die Aufgabestellung modifiziert wird und Sie alle Datensätze selektieren müssen, deren Farbangabe „gelb„, „rot“ und „blau-rot“ entspricht? Oder wenn zur Farbangabe noch die Größenangabe hinzukäme? Sie sehen, dieser Anforderung kann mit den vorgenannten Möglichkeiten nicht entsprochen werden.
Die Verwendung von regulären Ausdrücken (auch Regular Expressions oder RegEx genannt) ist nahezu unverzichtbar, wenn es darum geht aus großen Datenmengen bestimmte Entsprechungen herauszufinden.
Reguläre Ausdrücke dienen dazu, spezielle Zeichenketten in einer Menge von Zeichen bzw. Zeichenketten zu finden. Ein regulärer Ausdruck wird aus beliebigen Ziffern und Zeichen unter Berücksichtigung von Groß- und Kleinschreibung in Kombination mit folgenden Metazeichen gebildet:
Metazeichen | Kurzbeschreibung |
. | Beliebiges, einzelnes Zeichen |
\ | Wird benötigt, um ein Metazeichen buchstäblich zu nutzen |
[ ] | Gruppe von Zeichen |
– | Bereich (von-bis) |
? + * | Quantifizierung eines beliebigen Zeichens |
{ } | Wiederholung eines beliebigen Zeichens |
( ) | Gruppierung von Zeichen und Speicherung zur späteren Verwendung |
| | Deklaration alternativer Zeichenketten |
^ | Zeichen muss am Anfang stehen |
$ | Zeichen muss am Ende stehen |
\d | Abkürzung für Ziffern |
\w | Abkürzung für alphanumerische Zeichen bzw. Unterstrich |
\s | Abkürzung für Whitespaces |
Alle anderen Zeichen weisen keine Meta-Eigenschaft auf. Die Eigenschaften und Auswirkungen der Verwendung von Metazeichen – auch in Google Analytics und Urchin – zeige ich Ihnen in den nächsten Abschnitten und Teilen dieser Serie.
Der Punkt (.) ist eines der meistgenutzten Metazeichen und entspricht einem beliebigen, einzelnen Zeichen. Die Betonung liegt hier tatsächlich auf beliebig und einzeln, denn ganz gleich, welches Zeichen der Zeichenkette gefunden werden soll, durch den Punkt sind alle denkbaren Zeichen abgedeckt.
Beispiel:
Der folgende reguläre Ausdruck
Akt ., Szene 3
entspricht somit den Zeichenketten
Akt 1, Szene 3
Akt 2, Szene 3
Akt 3, Szene 3
Akt 4, Szene 3
Akt 5, Szene 3
Akt 6, Szene 3
Akt 7, Szene 3
Akt 8, Szene 3
Akt 9, Szene 3
nicht aber der Zeichenkette
Akt 10, Szene 3
Warum? Die Zeichen „10“ stellen mehr als ein Zeichen dar. Sie erinnern sich? Die Betonung liegt bei der Verwendung des Metazeichens Punkt auf „einzelnes Zeichen„.
Um dieser Zeichenkette zu entsprechen, müsste der reguläre Ausdruck wie folgt modifiziert werden:
Akt .., Szene 3
Der Backslash (\) wird dazu verwendet, einem Metazeichen buchstäblich zu entsprechen.
Beispiel:
Der folgende reguläre Ausdruck
z.B. Blumen
entspricht somit der Zeichenkette
z.B. Blumen
aber auch den Zeichenketten
zUB. Blumen
z.B3 Blumen
z1Bg Blumen
Warum? Zur Erinnerung: Ein Punkt (.) entspricht einem beliebigen, einzelnen Zeichen. Um einem Punkt buchstäblich zu entsprechen, muss diesem somit ein Backslash (\) vorangestellt werden.
Der folgende reguläre Ausdruck
z\.B\. Blumen
entspricht nun ausschließlich der Zeichenkette „z.B. Blumen“, da nach dem Punkt durch den vorangestellten Backslash buchstäblich gesucht wird.
Oftmals besteht die Notwendigkeit, nach verschiedenen Zeichen in einer Zeichenkette parallel zu suchen. So wäre in Bezug auf das Beispiel aus der Einführung denkbar, dass Sie die Datensätze der Größen S und M gleichzeitig suchen.
Um das zu realisieren, werden bei den regulären Ausdrücken die eckigen Klammern ([ ]) genutzt.
Alle Zeichen, die innerhalb der eckigen Klammern stehen, werden an der jeweiligen Stelle gesucht und gefunden.
Beispiel:
Der folgende reguläre Ausdruck
[zZ]\.[bB]\. Blumen
entspricht somit den Zeichenketten
z.B. Blumen
Z.B. Blumen
z.b. Blumen
Z.b. Blumen
nicht aber den Zeichenketten
z.B. blumen
ZB Blumen
Warum? Der reguläre Ausdruck setzt zum einen voraus, dass in der Zeichenkette das Wort „Blumen“ mit einem „B“ als Großbuchstabe enthält und zum anderen nach „z“ und „b“ jeweils ein Punkt steht.
Durch den Einsatz eines Bindestrichs (–) innerhalb der eckigen Klammern, können Sie Bereiche definieren, nach denen gesucht werden soll.
Beispiel:
Der folgende reguläre Ausdruck
Marktplatz [0–9]
entspricht somit unter anderem den Zeichenketten
Marktplatz 1
Marktplatz 5
Marktplatz 9
aber nicht den Zeichenketten
Marktplatz 37
Marktplatz A
Warum? Der reguläre Ausdruck setzt zum einen voraus, dass die Zeichenkette nur ein Zeichen der Ziffern zwischen 1 und 9 enthält und zum zweiten keine Buchstaben enthalten darf.
Durch den Einsatz des Caret (^) direkt nach der öffnenden eckigen Klammer werden die gesuchten Entsprechungen invertiert.
Der reguläre Ausdruck für eine Gruppe [^zZbB] entspricht allen Zeichen, die nicht ein z, Z, b oder B darstellen.
Ebenso verhält es sich mit Bereichen. Der reguläre Ausdruck [^0–9] entspricht allen Zeichen, die nicht 0, 1, 2, 3, 4, 5, 6, 7, 8 oder 9 darstellen.
In diesem ersten Teil haben Sie einen Überbick die in Google Analytics und Urchin verwendbaren regulären Ausdrücke erhalten. Ebenso haben Sie mehr über die Verwendung der Metazeichen Punkt, Backslash, Bindestrich und eckige Klammern erfahren. Im zweiten Teil dieser Reihe gehe ich auf die Möglichkeiten ein, die sich durch den Einsatz von Quantifizierung, Gruppierung und Alternative bieten.
Im Blog-Eintrag Einspielen und Aktivieren einer Lizenz in Urchin Software wurde Ihnen gezeigt, wie Sie Ihre Lizenz in Urchin einspielen. Dazu ist aber grundsätzlich ein Internetzugriff nötig. Manchmal ist aber gerade mit dem Rechner, auf dem Urchin installiert ist, keinerlei Zugriff auf das Internet möglich. Die Ursachen dafür können in Sicherheitsrichtlinien des Unternehmens oder aber auch in einem Proxy-Server liegen, der keine Internet-Verbindung per HTTPS zulässt. Ist das der Fall, können Sie Ihre Urchin-Lizenz für gewöhnlich nicht aktivieren.
Glücklicherweise können Sie jederzeit unseren professionellen Support in Anspruch nehmen, der sich dann um die Aktivierung Ihrer Lizenz kümmert. Das nachfolgende Szenario geht davon aus, dass Sie mit einem beliebigen Rechner auf das Internet zugreifen und E-Mails empfangen können.
Folgende Schritte sind nötig, um Ihre Urchin Lizenz ohne Internetzugriff zu aktivieren:
Installieren Sie Urchin komplett auf dem Zielsystem (Datenbankserver und Urchin) und melden Sie sich an Urchin an.
Nach erfolgreicher Anmeldung erscheint der unten stehende Bildschirminhalt. Dort klicken Sie auf Activate License.
Sobald Sie auf den Link Activate License geklickt haben, wird Ihnen aufgrund der fehlenden Internetverbindung eine Fehlermeldung ähnlich der folgenden im Browser angezeigt:
Damit nun unser Support-Team Ihre Lizenz aktivieren kann, werden diverse Informationen benötigt, die Sie uns einfach online auf unserer Seite für die Aktivierung der Urchin Lizenz übermitteln können. Dort stehen Ihnen drei Möglichkeiten zur Verfügung: kostenfreie Aktivierung sowie Aktivierung der Lizenz innerhalb garantierter Zeiten:
Sie erhalten dann – in Abhängigkeit der zuvor gewählten Abwicklung – von unserem Support-Team eine E-Mail zugesandt, in der sich ein URL befindet. Diesen kopieren Sie bitte und fügen ihn in die Adressezeile Ihres Browsers auf dem Zielsystem ein:
Bestätigen Sie ggf. noch die Installation der Lizenz und drücken Sie danach die Enter-Taste. Der folgende Bildschirminhalt wird angezeigt:
Sie können nun mit der Initial-Konfiguration Ihrer Urchin Installation fortfahren.
Wer dachte, dass Urchin 6 mit 136 Filterfeldern, schon über eine ganze Menge an Filtermöglichkeiten verfügt, wird in Urchin 7 noch mehr davon vorfinden. Denn in Urchin 7 wurde die Anzahl der verfügbaren Filterfelder um 33 erweitert. Zwei nicht mehr benötigte Filterfelder wurden entfernt, sodass die Anzahl der Filterfelder 167 beträgt.
Die Daten in den Protokolldateien (Logfiles) entsprechen zunächst einmal unterschiedlichen Feldern, ähnlich einer Tabelle. Diese Informationen werden von Urchin in wiederum unterschiedliche neue Felder verarbeitet. Dabei werden dei Informationen entweder nur abgelegt, aufgetrennt, zusammengeführt bzw. neu berechnet. Um das zu realisieren, verfügt Urchin über zwei unterschiedlich Feldtypen: RAW und AUTO.
Felder des Typs RAW bezeichnen die Informationen, die exact so in die Protokolldatei (Logfile) geschrieben werden. Dazu zählen z. B. Datum, Uhrzeit, IP-Adresse, etc. Jedoch variieren die verwendeten RAW-Felder je nach Protokollformat (Logformat). So hat eine Protokolldatei nach dem Protokollformat W3C einen anderen Aufbau als eine Protokolldatei nach NCSA.
In der untenstehenden Liste erkennen Sie die RAW-Felder anhand der Bezeichnung in der Spalte Typ und in welchem Protokollformat diese Verwendung finden.
Nachdem Urchin die Inhalte aus den RAW-Feldern extrahiert hat, werden die Informationen nun entsprechend verarbeitet und dann in Felder des Typs AUTO gespeichert. AUTO steht in diesem Fall für „auto calculated“, also automatisch berechnet.
Das bedeutet, dass neben den Standardinformation wie z.B. Datum, Uhrzeit, IP-Adresse, etc. nun auch die Cookie-Informtionen verwertet werden. Welche Informationen darin enthalten sind, habe ich bereits im Blog-Post „__utm.gif oder Wie werden Daten für Urchin in das Logfile geschrieben?“ beschrieben.
Neben der Vielfalt der Felder und deren Inhalte haben die AUTO-Felder einen wesentlichen Vorteil gegenüber den RAW-Feldern: Es gibt keine Unterschiede mehr, die aus den verschiedenen Protokollformaten (W3C, NCSA, etc.) herrühren.
In der untenstehenden Liste erkennen Sie die AUTO-Felder anhand der Bezeichnung in der Spalte Typ und in welchem Protokollformat diese Verwendung finden.
Das folgende Beispiel veranschaulicht, wie aus zwei unterschiedlichen RAW-Feldinformationen identische AUTO-Feldinhalte werden:
Nehmen wir einmal an, Sie rufen den URL https://blog.webalytics.de/index.php?p=1000&preview=true auf. Dann würde der Teil index.php?p=1000&preview=true als entsprechende Anforderung in Protokolldatei des Webservers vermerkt. Spannend in diesem Zusammenhang aber ist, dass, in Abhängigkeit des Webservers und Protokollformat, unterschiedliche RAW-Felder zum Einsatz kommen.
Somit würde die Anforderung in einer Apache-Protokolldatei (NCSA) in folgendem Feld vermerkt:
Feld | Inhalt |
cs_request | „GET index.php?p=1000&preview=true HTTP/1.1“ |
In einer IIS-Protokolldatei (W3C) hingegen würde die Anfroderung anders aufgeschlüsselt:
Feld | Inhalt |
cs_method | GET |
cs_uristem | /index.php |
cs_uriquery | p=1000&preview=true |
Interessant aber ist, dass nach der Verarbeitung von RAW- in AUTO-Felder nun aber ungeachtet des Protokollformats folgende Felder und Inhalte gespeichert werden:
Feld | Inhalt |
request_stem | /index.php |
request_query | p=1000&preview=true |
Das ist ein bemerkenswerter Vorteil, da Sie nun Ihre Filtersetzung primär auf AUTO-Felder anwenden und sich somit keine Gedanken über die zugrunde liegende Webserver-Technik machen müssen.
Nachfolgend eine alphabetisch sortierte Auflistung der verfügbaren Filterfelder im Vergleich (Sie können sich die Tabelle gerne auch als Excel-Datei hier herunterladen):
Feldname | Beschreibung | Typ | Urchin 6 | Urchin 7 | W3C | NCSA | ELF2 | |
apache_time | Apache-RAW-Datum und -Uhrzeit des Trefferfelds | RAW | • | • | • | • | ||
browser_base | Browsername (z. B. Netscape) | AUTO | • | • | ||||
browser_version | Browser-Version | AUTO | • | • | ||||
c_host | Client-Hostname (wird gegebenenfalls zu c_ip konvertiert) | RAW | • | • | • | |||
c_ip | Client-IP-Adresse | RAW | • | • | • | |||
clickthru_page_from | Klickseiten-Ursprung | AUTO | • | |||||
clickthru_page_to | Klickseiten-Ziel | AUTO | • | |||||
client_hostname | Client-Hostname | AUTO | • | • | ||||
client_ipaddress | Client-IP-Adresse | AUTO | • | • | ||||
cpc_account | CPC-Konto aus Protokolldatei | RAW | • | • | ||||
cpc_adgroup | CPC-Anzeigengruppe aus Protokolldatei | RAW | • | • | ||||
cpc_campaign | CPC-Kampagne aus Protokolldatei | RAW | • | • | ||||
cpc_keyword | CPC-Keyword aus Protokolldatei | RAW | • | • | ||||
cs_cookie | Vom Browser gesendete Cookies | RAW | • | • | • | • | • | |
cs_host | Vom Client angeforderter virtueller Host | RAW | • | • | • | • | • | |
cs_method | IIS-RAW-Anforderungsmethodenfeld | RAW | • | • | • | |||
cs_referer | Informationen zu RAW-Verweisen (gegebenenfalls intern) | RAW | • | • | • | |||
cs_request | IIS-RAW-Anforderungs-URI | RAW | • | • | • | |||
cs_uriquery | IIS-RAW-Anforderungsabfragefeld | RAW | • | • | • | |||
cs_uristem | IIS-RAW-Anforderungsstammfeld | RAW | • | • | • | |||
cs_useragent | Browser-User-Agent-Informationen | RAW | • | • | • | • | ||
cs_username | Client-Nutzername (falls vorhanden) | RAW | • | • | • | • | ||
cs_version | IIS-Raw-HTTP-Version | RAW | • | • | • | |||
custom_date | Wird für Datumstempel in benutzerdefinierten Protokollen verwendet | RAW | • | • | • | |||
custom_time | Wird für Uhrzeitstempel in benutzerdefinierten Protokollen verwendet | RAW | • | • | ||||
day | Tag | AUTO | • | |||||
domain_complete | Vollständige Domain (z. B. urchin.com) | AUTO | • | • | ||||
domain_primary | Domain der ersten Ebene (z. B. „de“) | AUTO | • | • | ||||
ecommerce_affiliation | E-Commerce-Transaktions-ID | AUTO | • | • | ||||
ecommerce_bill_city | Stadt der Rechnungsadresse für die E-Commerce-Transaktion | AUTO | • | • | ||||
ecommerce_bill_country | Land der Rechnungsadresse für die E-Commerce-Transaktion | AUTO | • | • | ||||
ecommerce_bill_region | Bundesland der Rechnungsadresse für die E-Commerce-Transaktion | AUTO | • | • | ||||
ecommerce_orderid | E-Commerce-Auftrags-ID-Nummer | AUTO | • | • | ||||
ecommerce_product_code | E-Commerce-Produktcode | AUTO | • | • | ||||
ecommerce_product_name | E-Commerce-Produktname | AUTO | • | • | ||||
ecommerce_quantity | E-Commerce-Produktmenge | AUTO | • | • | ||||
ecommerce_shipping | E-Commerce-Liefermenge | AUTO | • | • | ||||
ecommerce_tax | E-Commerce-Steuerbetrag | AUTO | • | • | ||||
ecommerce_total | E-Commerce-Transaktionsbetrag | AUTO | • | • | ||||
ecommerce_unit_price | E-Commerce-Einheitspreis des Produkts | AUTO | • | • | ||||
ecommerce_variation | E-Commerce-Produktvariation | AUTO | • | • | ||||
elf_bill_city | Stadt des E-Commerce-Kunden | RAW | • | • | • | |||
elf_bill_country | Land des E-Commerce-Kunden | RAW | • | • | • | |||
elf_bill_state | Bundesland des E-Commerce-Kunden | RAW | • | • | • | |||
elf_bill_zip | Postleitzahl des E-Commerce-Kunden | RAW | • | • | • | |||
elf_orderid | E-Commerce-Auftrags-ID-Nummer | RAW | • | • | • | |||
elf_price | E-Commerce-Produktpreis | • | ||||||
elf_product_code | E-Commerce-Produktcode | RAW | • | • | ||||
elf_product_name | E-Commerce-Produktname | RAW | • | • | • | |||
elf_quantity | E-Commerce-Produktmenge | RAW | • | • | • | |||
elf_region | Aufschlüsselungsinfor-mationen zur E-Commerce-Region | • | ||||||
elf_sessionid | ID der E-Commerce-Sitzung | RAW | • | • | • | |||
elf_shipping | E-Commerce-Liefermenge | RAW | • | • | • | |||
elf_store | Name des E-Commerce-Shops | RAW | • | • | • | |||
elf_tax | E-Commerce-Steuerbetrag | RAW | • | • | • | |||
elf_total | E-Commerce-Transaktionsbetrag | RAW | • | • | • | |||
elf_unit_price | E-Commerce-Einheitspreis des Produkts | RAW | • | • | • | |||
elf_upsold | E-Commerce-Upsold-Variable | RAW | • | • | • | |||
elf_variation | E-Commerce-Produktvariation | RAW | • | • | • | |||
event_action | Ereignis-Aktion | AUTO | • | |||||
event_category | Ereignis-Kategorie | AUTO | • | |||||
event_label | Ereignis-Label | AUTO | • | |||||
geo_city | Stadt des Besuchers | AUTO | • | • | ||||
geo_connection_speed | Verbindungsgeschwindigkeit des Besuchers | AUTO | • | • | ||||
geo_country | Land des Besuchers | AUTO | • | • | ||||
geo_isp | Besucher-ISP | AUTO | • | • | ||||
geo_latitude | Besucherbreitengrad | AUTO | • | • | ||||
geo_longitude | Besucherlängengrad | AUTO | • | • | ||||
geo_organization | Stadt des Besuchers | AUTO | • | • | ||||
geo_region | Unternehmen des Besuchers | AUTO | • | • | ||||
goal_clickthru_entrance_page | Einstiegsseite im Zielklickpfad | AUTO | • | |||||
goal_clickthru_exit_page | Ausstiegsseite im Zielklickpfad | AUTO | • | |||||
hour | Stunde | AUTO | • | |||||
iis_date | IIS-RAW-Datum des Trefferfelds | RAW | • | • | ||||
iis_time | IIS-RAW-Uhrzeit des Trefferfelds | RAW | • | • | ||||
initial_path_page1 | Seite 1 des Anfangspfades | AUTO | • | |||||
initial_path_page2 | Seite 2 des Anfangspfades | AUTO | • | |||||
initial_path_page3 | Seite 3 des Anfangspfades | AUTO | • | |||||
log_source_name | Name der Protokollquelle | AUTO | • | • | ||||
month | Monat | AUTO | • | |||||
organic_source | Indexbasierte Quelle | AUTO | • | • | ||||
platform_base | Plattform (z. B. Windows) | AUTO | • | • | ||||
platform_version | Plattformversion | AUTO | • | • | ||||
query_param_value | Wert des Abfrageparameters | AUTO | • | |||||
referral_anchor | Verweisinformationen nach #-Tag | AUTO | • | • | ||||
referral_directory | Verweisverzeichnis bis Dateiname | AUTO | • | • | ||||
referral_filename | Verweisdateiname ohne Verzeichnis | AUTO | • | • | ||||
referral_host | Vollständiger Verweis-Hostname | AUTO | • | • | ||||
referral_keywords | Verweis-Suchmaschinen-Keyword | AUTO | • | • | ||||
referral_mime | Verweis-Mime-Typ (Dateierweiterung) | AUTO | • | • | ||||
referral_port | Verweis-Portnummer (falls vorhanden) | AUTO | • | • | ||||
referral_protocol | Verweisprotokoll (http/https/und andere) | AUTO | • | • | ||||
referral_query | Verweis-Abfrageinfo an sich | AUTO | • | • | ||||
referral_stem | Verweis-URI-Stamm ohne Abfrageinfo | AUTO | • | • | ||||
referral_uri | Vollständige Verweis-URI (kein Host) | AUTO | • | • | ||||
referral_url | Vollständige Verweis-URL (inkl. Host) | AUTO | • | • | ||||
request_anchor | Anforderung Informationen nach #-Tag | AUTO | • | • | ||||
request_directory | Anforderung Verzeichnis ohne Dateiname | AUTO | • | • | ||||
request_download | Download-Anforderungen | AUTO | • | • | ||||
request_filename | Anforderung Dateiname ohne Verzeichnis | AUTO | • | • | ||||
request_form | Angeforderte hochgeladene Formulare“ | AUTO | • | • | ||||
request_host | Anforderung Hostname (falls vorhanden) | AUTO | • | • | ||||
request_method | Anforderungsmethode (GET/POST/und andere) | AUTO | • | • | ||||
request_mime | Anforderung Mime-Typ (Dateierweiterung) | AUTO | • | • | ||||
request_origfilepath | Anforderung Original-URI-Stamm, falls UTM. | AUTO | • | • | ||||
request_origmime | Anforderung Original-Mime-Typ, falls UTM. | AUTO | • | • | ||||
request_port | Anforderung Portnummer (falls vorhanden) | AUTO | • | • | ||||
request_protocol | Anforderung Protokoll (HTTP/und andere) | AUTO | • | • | ||||
request_query | Anforderung Abfrageinformationen (z. B. nach ?) | AUTO | • | • | ||||
request_stem | Anforderung URI ohne Abfrage | AUTO | • | • | ||||
request_time | Anforderung Zeit | AUTO | • | |||||
request_uri | Anforderung URI mit Abfrage | AUTO | • | • | ||||
request_url | Anforderung vollständiger URL (falls angegeben) | AUTO | • | • | ||||
request_version | Anforderung Protokollversion | AUTO | • | • | ||||
rev_goal_path | Umgekehrter Zielpfad | AUTO | • | |||||
rev_goal_path_page1 | Umgekehrter Zielpfad Seite 1 | AUTO | • | |||||
rev_goal_path_page2 | Umgekehrter Zielpfad Seite 2 | AUTO | • | |||||
rev_goal_path_page3 | Umgekehrter Zielpfad Seite 3 | AUTO | • | |||||
robot_agent | Robot-(Crawler-)Anforderungen | AUTO | • | • | ||||
s_computername | IIS-Computername | RAW | • | • | • | |||
s_ip | IIS-Server-IP-Adresse | RAW | • | • | • | |||
s_port | Serverportnummer | RAW | • | • | • | |||
s_sitename | IIS-Server-Standortname | RAW | • | • | • | |||
sc_bytes | Anzahl der für die Anfrage übertragenen Bytes | RAW | • | • | • | • | ||
sc_status | Rückgabestatus-Code vom Server | RAW | • | • | • | • | ||
session_end_time | Endzeit der Sitzung | AUTO | • | |||||
session_id | Sitzungs-ID | AUTO | • | |||||
session_ip | Sitzungs-IP | AUTO | • | |||||
session_start_time | Startzeit der Sitzung | AUTO | • | |||||
sid | Sitzungs-ID (falls vorhanden) | AUTO | • | • | ||||
totals | Gesamt | AUTO | • | |||||
transaction_id | Transaktions-ID | AUTO | • | |||||
transaction_time | Transaktionszeit | AUTO | • | |||||
user_defined_variable | Aus der Variablen utm_cookiev extrahierte benutzerdefinierte Variable | AUTO | • | • | ||||
username | Client-Nutzername (falls vorhanden) | AUTO | • | • | ||||
utm_campaign | UTM-Kampagnenname | AUTO | • | • | ||||
utm_campaign_clicks | UTM-Kampagnenklicks | RAW | • | • | • | |||
utm_campaign_cost | UTM-Kampagnenkosten | RAW | • | • | • | |||
utm_campaign_goal | UTM-Kampagnenziele (erreicht) | AUTO | • | • | ||||
utm_campaign_hour | Tageszeit, zu der der Kampagnentreffer aufgetreten ist. | AUTO | • | • | ||||
utm_campaign_impressions | Anzahl der Impressionen der UTM-Kampagne | RAW | • | • | • | |||
utm_campaign_uri | URI für die UTM-Kampagne | RAW | • | • | • | |||
utm_content | UTM-Kampagnen-Content | AUTO | • | • | ||||
utm_cookiea | UTM-2 Cookie-a | AUTO | • | • | ||||
utm_cookieb | UTM-2 Cookie-b | AUTO | • | • | ||||
utm_cookiec | UTM-2 Cookie-c | AUTO | • | • | ||||
utm_cookiev | UTM-2 Cookie-v | AUTO | • | • | ||||
utm_cookiez | UTM-2 Cookie-z | AUTO | • | • | ||||
utm_extended | UTM (erweitert) | AUTO | • | |||||
utm_flash_version | Flash-Versionsinfo | AUTO | • | • | ||||
utm_id | UTM-Kampagnen-ID | AUTO | • | • | ||||
utm_java_enabled | ja|nein, falls Java aktiviert ist. | AUTO | • | • | ||||
utm_js_version | Javascript-Versionsinfo | AUTO | • | • | ||||
utm_language | Browser-Sprachcode-Einstellung | AUTO | • | • | ||||
utm_medium | UTM-Medium (CPC|CPM|Link|E-Mail|indexbasiert) | AUTO | • | • | ||||
utm_new_campaign | Neue UTM-Kampagnen | AUTO | • | • | ||||
utm_page | UTM-Seitenvariable (verwendet für request_ variables) | AUTO | • | • | ||||
utm_page_title | UTM-Seitentitel | AUTO | • | • | ||||
utm_referral | UTM-Verweis (verwendet für referral_-Variablen) | AUTO | • | • | ||||
utm_request_hostname | Hostname zum Kampagnentreffer | AUTO | • | • | ||||
utm_screen_colors | Bildschirmfarbe-Bittiefe | AUTO | • | • | ||||
utm_screen_resolution | Bildschirmauflösung (z. B. 800×600) | AUTO | • | • | ||||
utm_source | UTM-Kampagnenquelle | AUTO | • | • | ||||
utm_term | UTM-Kampagnenbegriff | AUTO | • | • | ||||
utm_type | UTM-Type (Transaktion, Artikel, var) | AUTO | • | • | ||||
utm_unique_id | Eindeutige UTM-Besucher-ID | AUTO | • | • | ||||
visitor_id | Besucher-ID | AUTO | • | |||||
visitor_type | Neue und wiederkehrende Besucher | AUTO | • | • | ||||
year | Jahr | AUTO | • |
Urchin 7, die aktuellste Version der beliebten Webanalyse-Software, präsentiert sich leistungsstark und ganz im „Google Look & Feel“. Die professionelle Webanalyse-Software punktet äußerlich mit übersichtlicherer Benutzeroberfläche, klaren Grafiken und einfacher Navigation. Aber hinter dem smarten Erscheinungsbild steckt auch mehr Leistung: Zusätzliche Berichte sowie die 64bit Version machen die Datenanalyse mit Urchin noch flexibler, noch schneller und noch effizienter. Doch wie schaut es mit der Datenschutzkonformität aus? Erfüllt Urchin die Anforderungen der Datenschützer?
Die datenschutzrechtlichen Anforderungen des Düsseldorfer Kreises umfassen folgende Punkte aus dem TMG (gem. Beschluss vom 26./27. November 2009 in Stralsund, PDF hier herunterladen) :
Bevor ich jedoch auf die Frage nach dem Datenschutz eingehe, möchte ich Ihnen zunächst einmal verdeutlichen, wie die Daten in Urchin überhaupt erhoben werden. Die nachfolgende Grafik macht deutlich, wie Urchin Software die Daten erfasst, verarbeitet, aufbereitet und darstellt.
Der Prozess der Datenerfassung beginnt, sobald ein Besucher eine Webseite von einem Webserver abruft. Der Server antwortet, indem er die angeforderte Seite an den Browser des Besuchers sendet. Während der Browser die Seite aufbereitet und darstellt, wird ebenfalls das Script urchin.js abgerufen und der Tracking Code ausgeführt (1).
Bei der Ausführung des Codes werden verschiedene Eigenschaften in Bezug auf den Besucher und seine Browser-Umgebung ermittelt (z. B. wie of er die Website besucht hat, woher er kam, etc.).
Sobald alle erforderlichen Daten erfasst wurden, setzt oder aktualisiert (in Abhängigkeit der Situation) der Tracking Code einer bestimmte Anzahl von Cookies (2), in denen Informationen zum Besucher gespeichert werden.
Nachdem die Cookies erstellt bzw. aktualisiert wurden, sendet der Tracking Code die Daten zurück an den Webserver. Dies geschieht durch den Aufruf einer unsichtbaren GIF-Datei namens __utm.gif (3).
Sobald der Webserver den Aufruf der Datei erhält, werden die übermittelten Daten in einer großen Textdatei gespeichert (4). Diese Textdatei wird Logfile (oder Protokolldatei) genannt, und es befindet sich darin jeweils eine Zeile für jeden Aufruf einer Seite bzw. deren Elemente. Jede dieser Zeilen enthält verschiedene Attribute bezüglich des Seitenaufrufs, inklusive der Folgenden:
Nachdem der Seitenaufruf im Logfile vermerkt wurde, ist der Prozess der Datenerfassung abgeschlossen.
Der nächste Schritt ist die Datenverarbeitung und -aufbereitung. In einem regelmäßigen Intervall greift Urchin nun auf Logfiles zu (per Download, i. d. R. einmal täglich) und arbeitet diese dann ab (5 ). Während des Verarbeitungsprozesses wird jede Datenzeile in ihre Bestandteile zerlegt. Nachfolgend sehen Sie einen Auszug aus einem Logfile. Bitte beachten Sie, dass es sich hierbei nicht um ein tatsächliches Logfile für Urchin handelt, sondern vielmehr Demonstrationszwecken dienen soll:
82.100.192.194 www.webalytics.de - [11/Feb/2008:08:52:54 +0100] "GET /__utm.gif ?utmwv=1&utmn=426395627&utmcs=iso-8859-1&utmsr=1280x1024&utmsc=32-bit&utmul=de& utmje=1&utmfl=9.0&utmcn=1&utmdt= Urchin%20Software%20-%20Base%20Module%20-%20UT M&utmhn=www.webalytics.de&utmr=http://www.google.de/search?q=%22SuSe+Linux+8%22 +download&hl=de&cr=countryDE&start=20&sa=N&utmp=/us/sw_mod_bm_systemanforderung .php HTTP/1.0" 200 35 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; . NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR3.0.04506.30)" "__utma=226596891. 426395627.1202716238.1202716238.1202716238.1; __utmb=226596891; __utmc=22659689 1; __utmz=226596891.1202716238.1.1.utmccn=(organic)|utmcsr=google|utmctr=%22SuS e+Linux+8%22+download|utmcmd=organic"
Während der größte Teil der Datenzeile eher schwer zu verstehen ist, lassen sich das Datum und die Uhrzeit des Besuchs (11.02.2008 um 08:52:54 Uhr), sowie die IP-Adresse des Besuchers (82.100.192.194) jedoch auf einen Blick erkennen.
Urchin teilt nun jede Datenzeile eines Logfiles in entsprechende Datenelemente, genannt „Felder“, auf (6). Zum Beispiel wird aus der IP-Adresse das Feld „Besucher IP“. Es ist somit von größter Wichtigkeit zu verstehen, dass jeder Seitenaufruf eine Unmenge an Daten liefert, die wiederum in unterschiedlichen Feldern abgespeichert werden.
Nachdem jede Datenzeile in Felder aufgeteilt wurde, werden nun die Daten gefiltert (7). Filter stellen die Regeln dar, die Sie in Urchin hinzufügen und die somit beeinflussen, welche Daten in den Berichten erscheinen und wie diese dann aussehen.
Zuletzt werden die Berichte erstellt (8) und in der Datenbank von Urchin gespeichert (9). Jeder Bericht in Urchin wird durch den Vergleich von Feldern (z. B. Stadt) mit Ganzzahlen (Integer) errechnet (z. B. Besuche, Seitenansichten, Absprungrate, Konvertierungsrate, etc.).
Sobald die Daten in die Datenbank geschrieben wurden, ist der gesamte Prozess abgeschlossen. Wenn Sie oder ein anderer Benutzer nun einen Bericht in Urchin abrufen, werden die entsprechenden Daten aus der Datenbank gelesen und in einer übersichtlichen Berichtsform an den Browser gesendet (10).
Welche Daten genau in das Webserver-Logfile geschreiben werden, habe ich bereits ausführlich im Blog-Post _utm.gif oder Wie werden Daten für Urchin in das Logfile geschrieben? erläutert.
Von den fünf vorgenannten Anforderungen des Düsseldorfer Kreises fallen wohl die erste und die dritte (Widerspruchsrecht und Hinweis bzgl. Erstellung pseudonymer Nutzungprofile) unter die Obliegenheit des Website-Betreibers und dessen technische Gegebenheiten. Für das Widerspruchsrecht bedeutet dies, dass der Betreiber einer Website dem Besucher eine Möglichkeit zum Widerspruch gegen die Erstellung von Nutzungsprofilen einräumen (sogenanntes Opt-Out) kann, indem er einfach eine Schaltfäche bzw. Checkbox auf der Website integriert. Diese würde dann nach Betätigung die Ausführung eines Tracking Codes einfach unterbinden. Eleganter kann dies mit der kostenfreien Lösung „Opt-Me-Out“ realisiert werden, die unter http://www.opt-me-out.de heruntergeladen werden kann. In Bezug auf den Hinweis bzgl. Erstellung pseudonymer Nutzungprofile obliegt es dem Websitebetreiber, einen entsprechenden Passus in die Datenschutzerklärung zu integrieren. Hierbei sollte er sich an einen kundigen Rechtsanwalt wenden, der ihm wiederum eine geeignete Formulierung an die Hand gibt.
Die geforderte Datentrennung ist primär schon dadurch gegeben, dass ein Nutzer sich auf einer Website nicht zwangsläufig zu erkennen geben muss. Dies ist immer nur dann der Fall, wenn sich beispielsweise der Nutzer zum Betreten eines geschlossenen Bereichs oder beim Checkout-Prozess eines Online-Shop-Kaufs anmelden müsste. Aber selbst wenn das der Fall ist, werden die Anmeldedaten per Design nicht im Webserver-Logfile vermerkt.
Auch bei der Auswertung von E-Commerce-Daten werden mittels Urchin nur Daten erfasst, die mit dem Produkt selbst in Verbindung stehen:
Somit ist eine Korrelation der erfassten E-Commerce-Daten mit denen des Käufers gar nicht möglich.
Der Einsatz von Urchin in Kombination mit dem Urchin Tracking Code erhebt ausschließlich Daten bezüglich der abgerufenen Seiten einer Website inklusive Dimensionsdaten wie z.B. Bildschirmauflösungen, eingesetzte Flashversion, Betriebssystem, Browser, Verweisseite, kampagnenrelevante Daten (Quelle, Medium, Keyword, Inhalt, Kampagnenname), etc. Personenbezogene Daten werden erst gar nicht erhoben, da sich die Besucheridentifikation lediglich auf die Unterscheidung zwischen neuen bzw. wiederkehrenden Besuchern beschränkt und sich aus folgenden Werten zusammensetzt:
Hier wird deutlich, dass keinerlei personenbezogene oder -identifizierbare Daten gespeichert werden. Die erhobenen Daten werden im sogenannten _utma-Cookie gespeichertund bei jedem Webseitenabruf aktualisiert.
Der Teil des Cookies, welcher dem Besucher eine eindeutige Identifizierbarkeit zuweist, besteht aus dem Teil „Besucher ID“ und dem Teil „Zeitpunkt des ersten Besuchs“. Nur die beiden Abschnitte in Kombination ermöglichen es Urchin festzustellen, ob der Besucher bereits bekannt ist oder nicht.
Der Wert für „Besucher ID“ wird anhand folgender Kriterien errechnet: Browser (Typ und Version), Betriebssystem (Typ und Version) Rechner sowie einer Zufallszahl. Somit unterscheidet sich dieser Wert, in Abhängigkeit des Rechners, der eingesetzten Software und logischerweise der Zufallszahl, für jeden Besucher. Das bedeutet aber auch im Umkehrschluss, dass ein Nutzer, der mit drei unterschiedlichen Browsern (IE, FF, Chrome) agiert, auch drei verschiedene Besucher darstellt.
Der Inhalt für „Zeitpunkt des ersten Besuchs“ wird seit 1970 in Sekunden ausgedrückt. Somit gilt: Wenn der Benutzer seine Cookies löscht, wird für jeden Besuch auf der selben Website eine neue, völlig andere „Eindeutige ID“ generiert.
Dadurch wird deutlich, dass in Urchin keinerlei Personenbezug vorhanden ist.
Der Wunsch, IP-Adressen aus dem Internet zu verbannen, ist genauso irrelevant wie der Versuch, die Schwerkraft aufzuheben. Der Datenverkehr im Internet fußt nun einmal auf der Verwendung von IP-Adressen. Genau so essenziell wie es die Zuweisung einer festen IP-Adresse für einen Server im Internet ist, benötigt auch jeder Client-Rechner eine IP-Adresse, damit er überhaupt das WWW „durchforsten“ kann. Und eben diese IP-Adressen der Client-Rechner werden beim Besuch einer Webseite vom Server selbst protokolliert.
Urchin bietet nun mit wenigen Klicks die Möglichkeit, über eine einfache Filtersetzung IP-Adressen zu anonymisieren. Dabei kann der Administrator entscheiden, ob entweder nur das letzte Oktett der IP-Adresse unkenntlich gemacht oder die ganze IP-Adresse z.B. mit 127.0.0.1 überschrieben werden soll.
Der Einsatz von Urchin räumt auch weitere Bedenken in Bezug auf den Datenschutz aus:
Urchin bietet als käufliches Pendant zu Google Analytics alle Möglichkeiten der professionellen Webanalyse. Neben einem umfänglichen Feature-Set, das kaum Wünsche offen lässt, bietet Urchin auch im Gegensatz zu Google Analytics die Möglichkeit, historische Datenbestände zu analysieren. Durch die Auswertung lokaler Protokolldateien (Logfiles) ist mit Urchin endlich datenschutzkonformes Tracking realisierbar; die Diskussion bezüglich Datenschutz kann somit erst gar nicht aufkommen.
Dass Online-Kampagnen mit Google Analytics und Urchin Software hervorragend ausgewertet werden können, sollte mittlerweile hinlänglich bekannt sein. Wie aber sieht es mit Kampagnen im „Offline“-Bereich aus? Zeitungen, Zeitschriften, Radio- oder Fernseh-Spots? Wäre es denn nicht schön, wenn auch diese Kampagnen mit den Analysetools aus dem Hause Google messbar wären? Sie denken, das geht nicht? Schön! Denn gerne zeige ich Ihnen einen möglichen Weg auf, wie es doch geht…
Gerade bei Anzeigen in Printmedien, Radio- oder TV-Spots wird doch immer öfter auf eine Interetseite verwiesen. Da dieser URL nicht zu lang sein darf (schließlich will der Werbende ja, dass sich die Zielperson/-gruppe diesen auch merkt), wird meist auf die Startseite, maximal jedoch auf eine leicht zu merkende Unterseite verwiesen.
Auf der Startseite wird dann versucht, den Besucher (und potenziellen Kunden) mit einem Eye-Catcher „abzuholen“ (meist auffälliger Button, der den Slogan der Kampagne widerspiegelt) und mittels Klick auf die gewünschte Unterseite zu lenken. Großer Fehler! Denn auf der Startseite einer Website tummeln sich mitunter viele Aktionselemente (sog. Call-to-Action), die um die (Klick-)Gunst des Besuchers buhlen.
Werbung für ALICE DSL (zu sehen auf http://myg8.de/alice-dsl) im TV führt bei Eingabe des kommunizieren URL (www.alice.de) auf die Startseite des Unternehmens, auf der sich alleine acht Aktionselemente aneinanderreihen (die Buttons im unteren Bereich eines jeden Kästchens):
Somit kann es auch gerne mal passieren, dass der Besucher eben nicht auf das gewünschte Aktionselement klickt, weil er es nicht auf anhieb findet, sich auf der Website einfach nicht „wohlfühlt“ oder aber schlichtweg ein anderes „Klick MICH!“-brüllendes Aktionselement wählt.
Den Vogel aber in Sachen Nutzerfrustration schießt in der Tat die Firma Nivea mit ihrem TV-Spot „NIVEA FOR MEN Revitalising Q10 Gel“ ab (zu sehen unter http://myg8.de/n4m-horizont oder auch unter http://myg8.de/n4m-myvideo). In diesem Werbeclip wird ab der fünften Sekunde deutlich sichtbar der URL www.niveaformen.de eingeblendet. In dem ganzen Spot geht es um die „revitalisierende Wirkung“ des Produkts mit dem Namen „Q10“.
Spannend aber in diesem Zusammenhang ist, dass eben dieser URL weder zu den Produktdetails führt noch auf der Startseite überhaupt ein sofort sichtbares Aktionselement auf das Produkt hinweist. Vielmehr wird der Besucher mit dem kompletten Produktportfolio der Firma „überrannt“.
Dort müsste er sich erst mühsam zum Produkt durchklicken und dann im Nivea-Shop wieder ganz bei Null anfangen, da auf der Produktseite weder ein Link auf die Produktdetails im Shop existiert noch eine Warenkorbfunktion verfügbar ist.
Wenn wir nun einmal annehmen, wir würden ein KFZ des fiktiven Automobilherstellers „PAX Automobile GmbH“ bewerben wollen. Das Ziel der Kampagne ist es, möglichst viele Menschen dazu zu bewegen, einen Termin für eine Probefahrt über die Website des Herstellers (www.pax-automobile.de) zu vereinbaren.
Diese Kampagne würde im über einen Monat verteilt in den unterschiedlichsten Medien geschaltet werden:
Bereits in der Einlietung erwähnte ich, dass die Auswertung von Online-Kampagnen kein Problem ist, da wir hier ohne große Mühen eine entsprechende Kampagnenkennzeichnung durchführen können. Wie wir aber den Online-Erfolg durch die Bewerbung des Produkts in einem Offline-Medium messen können, erläutere ich in den folgenden Abschnitten.
Wie also kann nun die Internet-Reaktion auf einen solchen TV-Spot ausgewertet werden? Was genau brauchen Sie nun, um Offline-Kampagnen messen zu können? Die Antwort auf die Fragen lautet: Kampagnen-Variablen in Kombination mit einem URL-Shortening-Service und ggf. einer weiteren Domain…
Ggf. benötigen Sie, wie bereits erwähnt, eine weitere Domain und zusätzlichen Webspace (haben Sie entweder oder können ihn bei ihrem Providern für wenige Euros erhalten). Die Sache mit der Domain hingegen ist nicht ganz so trivial: sie sollte
Ja, ich weiß, das ist nicht leicht. Nachfolgend ein paar Beispiele, wie das funktionieren könnte:
Hauptdomain | zweite Domain |
hewlett-packard.de | hp.de |
volkswagen.de | vw.de |
niveaformen.de | n4m.de |
Dieser Schritt ist aber in der Tat optional. Eventuell finden Sie partout kein passendes Pendant zu Ihrer bestehenden Domain oder aber es sind alle sinnvollen kurzen Domainnamen bereits vergriffen. Sofern Ihre Domain nicht aus einer langen Zeichenkette (herzlich-willkommen-in-meinem-webspace.com) oder einer „sinnlosen“ Aneinanderreihung von Zeichen (lgrzf1.biz) besteht, können Sie aber trotzdem die hier beschriebenen Techniken anwenden, selbst wenn Sie sich keine zweite Domain zulegen.
Sie erinnern sich? Da war doch was von wegen Kampagnenvariablen an den URL anhängen…? Richtig! Hier noch einmnal zur Auffrischung der Kenntnisse: Von den in Summe fünf existierenden Kampagnenvariablen bei Google sind drei obligatorisch (utm_source, utm_medium, utm_campaing) und zwei optional (utm_content, utm_term). In der nachstehenden Tabelle finden Sie (auch nur zur Auffrischung) noch einmal die Bedeutung der einzelnen Variablen:
Variable | Bedeutung | obligatorisch |
utm_source | Identifiziert den Vermittler bzw. die verweisende Quelle (google, Stadtsuche, newsletter4) -> Woher kommt der Besucher? | ja |
utm_medium | Werbe- bzw. Marketingmedium (z. B. CPC, Banner, E-Mail) | ja |
utm_campagain | Name der Kampagne (z. B. Schlussverkauf, Frühbucher oder aber auch Produkt, Promo-Code, Slogan) | ja |
utm_content | Aussagekräftige Beschreibung, mit denen verschiedene Anzeigeversionen zum Vergleich (A/B-Test) identifiziert werden können (z. B. Text_rot, Text_blau) | nein |
utm_term | Keyword, nach dem gesucht wurde – bezahlt und unbezahlt (z. B. Hemd, Wasser+Flasche) | nein |
Wenn Sie sich also Gedanken zu den einzelnen Variablen gemacht haben und diese dann mit Leben füllen wollen, fügen Sie diese einfach an das Ende des URL an. Das würde dann etwa so aussehen:
http://www.domain.com/?utm_source=newsletter&utm_medium=email&utm_campaign=neue_produkte
Und damit Sie bei der Erstellung des URL keinen Fehler machen, hat Google natürlich ein entsprechendes Online-Tool zur Verfügung gestellt: den URL-Builder (zu finden unter http://myg8.de/url-tool).
Damit wären ja eigentlich alle Probleme gelöst, nicht wahr? Also könnte doch auch Nivea, um bei diesem Beispiel zu bleiben, einen sogenannten Deeplink (Link zur Produktdetailseite) mit diesen Kampagnenvariablen kommunizieren und schon wäre der potenzielle Kunde a) auf der richtigen Seite und b) könnten die Website-Betreiber eine Auswertung der Kampagne durchführen, richtig?
Falsch! Wer, bitte, ist in der Lage sich einen URL wie den folgenden in der kurzen Zeit eines Werbespots zu merken:
URLs, die auf Unterseiten Ihrer Internetpräsenz verweisen, können – je nach Struktur Ihrer Website – eine große Anzahl an Zeichen enthalten. Gerade bei Blogs (domain/jahr/monat/tag/blog-titel) und auchbei modernen Shop-Systemen (domain/warengruppe/kategorie/produktseite) ist das sehr oft der Fall.
Sofern Sie Twitter, LinkedIn, Facebook, etc. nutzen, wissen Sie, dass gerade bei den Statusmeldungen nur eine begrenzte Anzahl Zeichen erlaubt sind (ähnlich wie beim Schreiben einer SMS). Um nun hier mittels Link auf eine Webseite hinzuweisen und dafür möglichst wenige Zeichen zu „verschwenden“ haben sich in den letzten Jahren sogenannte URL-Shortening-Services etabliert (z. B. bit.ly, tinyurl.com, cli.gs, goo.gl, etc). Wie diese funktionieren und welchen Stellenwert sie im Bereich Social Media einnehmen, habe ich in meinem Blog-Post „URL-Shortening-Services für Social Media Marketing“ erläutert.
Diese Dienste verwandeln nun einen langen URL in einen völlig anderen, aber dafür kürzeren URL. So wird beispielsweise aus der langen Zeichenkette http://www.meine-domain.de/verzeichnis/unterseite/detail der folgende kurze URL http://bit.ly/abc.
Der Nachteil aber ist, dass Sie hier zum einen auf einen externen Dienstleister angewiesen sind und zum anderen den gekürzten URL nicht immer beeinflussen können. Daher empfehle ich den Einsatz eines eigenen URL-Shortening-Services.
Das Tool meiner Wahl, welches auch bei uns verwendet wird, lautet Pretty Link Pro für WordPress und ist in einer kostenfreien sowie einer kostenpflichtigen Version erhältlich. Damit stellen Sie sicher, dass Sie die volle Kontrolle über Ihre gekürzten Links und die verwendete Domain haben. Um dieses Tool einsetzen zu können, benötigen Sie lediglich eine Domain (entweder eine zweite oder aber die bestehende ohne „www“ davor), etwas freien Webspace und eine Installation von WordPress (kostenfrei zu beziehen auf wordpress.org). Die Installation von WordPress und Pretty Link Pro ist ziemlich einfach und in ca. 15 Minuten abgeschlossen.
Nachdem Sie sich nun alle „Zutaten“ besorgt haben, geht es an die Umsetzung des Vorhabens. Dabei beziehe ich mich wieder auf die oben genannte Beispielkampagne.
Der erste Schrit ist nun, für unsere Beispielkampagne eine zweite URL zu registrierten (z. B. paxcar.de), einen Webserver zu starten und WordPress zu installieren.
In WordPress wird dann der zuvor erwähnte URL-Shortening-Service Pretty Link Pro installiert und aktiviert.
Jetzt erstellen wir uns eine Tabelle nach folgendem Schema und füllen diese dann mit den gewünschten Werten:
Kampagne | Werbeträger | Werbemittel | Version | Landeseite |
PAX-2010 jetzt probefahren | Tageszeitung | Zeitung | TZ-37/2011 | http://www.pax-automobile.de/pax-2010/probefahrt/ |
PAX-2010 jetzt probefahren | Tageszeitung | Zeitung | TZ-44/2011 | http://www.pax-automobile.de/pax-2010/probefahrt/ |
PAX-2010 jetzt probefahren | Tageszeitung | Zeitung | TZ-51/2011 | http://www.pax-automobile.de/pax-2010/probefahrt/ |
PAX-2010 jetzt probefahren | Tageszeitung | Zeitung | TZ-58/2011 | http://www.pax-automobile.de/pax-2010/probefahrt/ |
PAX-2010 jetzt probefahren | SWR | Radio | SWR-Radio-Spot | http://www.pax-automobile.de/pax-2010/probefahrt/ |
PAX-2010 jetzt probefahren | RTL | Radio | RTL-Radio-Spot | http://www.pax-automobile.de/pax-2010/probefahrt/ |
PAX-2010 jetzt probefahren | SAT1 | TV | SAT1-TV-Spot | http://www.pax-automobile.de/pax-2010/probefahrt/ |
PAX-2010 jetzt probefahren | RTL | TV | RTL-TV-Spot | http://www.pax-automobile.de/pax-2010/probefahrt/ |
Um Ihnen die Arbeit zu erleichtern, habe ich eine Excel-Datei angefertigt, die Ihnen dabei hilft, die Kampagnen-URLs zu generieren. Sie können sich die Tabelle zur Planung von Offline-Kampagnen hier herunterladen.
Wir nutzen das Google Tool zur URL-Erstellung (http://myg8.de/url-tool), um die in Schritt 3 erfassten Werte in Kampagnenvariablen umzuwandeln:
Im fünften und letzten Schritt kürzen wir nun in unserem URL-Shortener den langen, mit Kampagnenvariablen gekennzeichneten URL und vergeben dabei sinnvolle Namen:
Sobald alle Kampagnenlinks erfasst wurden, können wir die gekürzten URLs an die Werbeträger kommunizieren bzw. integrieren.
Nachdem die URLs über die diversen Werbemedien an die potenziellen Kunden kommuniziert wurden, können wir den Erfolg der Kampagne wunderbar in Google Analytics bzw. Urchin nachverfolgen:
Durch die Sichtbarkeit der Offline-Kampagnen in Ihrer Webanalyselösung ist es nun auch möglich, die entsprechenden Conversion-Pfade zu definieren, zu messen und zu optimieren. Noch Fragen? Einfach Kommentar posten oder mit uns Kontaktaufnehmen :-).
Wichtige Meldung für alle Nutzer von Urchin Version 6: Mit Wirkung zum 31.01.2011 wird die Google AdWords NetAPI v1.3 abgeschaltet. Somit ist der Zugriff auf das AdWords-Backend mit dieser API nicht mehr möglich.
Davon betroffen sind Nutzer der Urchin-Versionen 6.5.00 bis 6.6.02, die Ihre AdWords-Kampagnen mit Urchin auswerten. Wir raten daher dringend an, Urchin kostenfrei auf die Version 6.6.03 zu aktualisieren oder aber ein Update auf die aktuelle Version 7.0.00 zu erwerben.
Für all diejenigen Nutzer, die mit Urchin keine AdWords-Kampagnen auswerten, ändert sich primär nichts.