Piwik für Server-Logs nutzen - Erfahrungsbericht

Hier mal ein kurzer Erfahrungsbericht über das Tracken von Flash-Klicks mittels Piwik:

Problemstellung: Aufzeichnen von Klicks über Flash ohne Zugriff auf Flash-Datei

Die Aufgabe die es zu lösen galt, war das Aufzeichnen von Klicks auf externe URLs innerhalb einer Flash-Anwendung. Bisher wurde über Google Analytics geprüft wieviele Besucher von der Seite kamen auf denen das Flash eingebunden war. Allerdings schienen die Daten dazu nicht wirklich zu stimmen, laut händischer Auswertung der Server Logs war die Anzahl der Aufrufe viel höher als von Google aufgezeichznet. Wobei hier auch sicher die Browsereinstellungen der Besucher eine Rolle gespielt haben könnten (Adblock, NoScript, DNT-Header, etc.). Die externen URLs können/konnten wir, zum Glück, über eine FlashVar selbst setzen.

Lösungversuch: Weiterleitung über zentrales Script mit Piwik Tracking API

Die allgemeine Lösung um die URLs im Flash aufzuzeichnen war ein eigenes Script das zwischen Flash und externer URL eingebunden wurde (ähnlich eines URL-Verkürzers). Der Aufruf der URL erfolgte dann nicht mehr direkt sondern erstmal auf das eigene Script, welches dann wiederum die Weiterleitung auf die URL vornahm. Um das nun aufzuzeichnen hätte es allemal genügt in einer Datenbank einen Zähler zu erhöhen, allerdings wollte ich nicht auf die Auswertungen von Piwik verzichten. Daher ging der erste Lösungsversuch über die Tracking API mittels direkten HTTP-Request. Funktionierte soweit auch ganz gut, allerdings war es von der Performance her nicht ganz optimal und auch die Daten hätten wir selbst anreichern müssen (User-Agent, etc.).

Lösung: Weiterleitung über zentrales Script mit Import der Server Logs in Piwik

Seit Version 1.7.2 enthält Piwik ein, in Python geschriebenes, Script um Logdateien von Webservern (Apache, Nginx, IIS, etc.) einzulesen und kann damit Tools wie Webalizer oder AwStats ersetzen. Wir haben dann die Flash URL auf eine Subdomain umgestellt und dem Apachen in den Virtual-Host Einstellungen gesagt, dass er bitte Logdateien erstellen soll. Anschließend noch einen Cron-Job erstellt, der die Logdateien einmal am Tag importiert und fertig. Das Script findet man in den aktuellen Piwik Versionen unter dem Pfad /misc/log-analytics/import_logs.py.

Thema: 

Kommentare