vom 16.07.2007 um 17:17 Uhr von Frank | 10 Kommentar(e) | Trackback URL
Kategorie(n): Webdesign, Skripte

Statistiktools und -skripte für Webseiten

Im folgenden Artikel möchte ich 4 kostenlose Statistiktools für Webseitenbetreiber vorstellen, mit denen ich in den vergangenen Monaten einige Erfahrungen sammeln konnte. Im Einzelnen sind das phpMyVisites, slimStat, chCounter und Google Analytics. Der Schwerpunkt liegt dabei auf eigenständigen Skripten, die auf Basis von PHP/MySQL auf dem jeweiligen Server laufen und damit für professionelle Webdienstleister und ambitionierte Webseitenbetreiber interessant sind.

Vorweg will ich noch einige Begriffe nennen, die im Beitrag wiederholt vorkommen werden:

  • Visit: der Wert, den ein einzelner, eindeutiger Besucher anhand seiner IP in einem bestimmten Zeitraum generiert
  • Hit: auch Seitenaufruf oder Page Impression genannt. Zählt bei jedem Klick auf die bestimmte Seite nach oben, unabhängig von der IP
  • Trigger: Javascript-Code zum Einbinden des Statistiktools in die Seite

Daraus ergibt sich, dass das Thema “Webstastatistik” nicht ganz trivial in einem Skript umzusetzen und auf dem Server anwendbar ist, da mehrere Herausforderungen gemeistert werden müssen:

Werte und Statistiken

Ab wann ist ein (wiederholter) Besucher als Visit zu zählen, wie scharf werden die Visits von den Hits getrennt? Wie wird mit den Spiderbots der Suchmaschinen (und Spammern) umgegangen? Was passiert mit dem Administrator, der online auf dem Live-System arbeitet und eine Menge Hits produziert? Wie sind Besucher zu erfassen, die via Proxy auf der Seite landen?

Technik und Umsetzung der Skripte

Hier ist die Frage nach der Einbindung des triggernden Codes zu stellen: Einbindung via PHP oder Javascript/und oder einem Web Bug. Bei per Javascript eingebundenem Trigger werden die Besucher nicht erfasst, die die Skriptsprache deaktiviert haben. PHP als Trigger via include erscheint mir dabei aus statistischer Sicht die sauberere Lösung zu sein.
Ebenfalls ist die durch serverseitige Skripte generierte Serverlast ein wichtiger Punkt. Je nach Menge der zu loggenden Optionen und Archivierung der Daten kann diese relevant werden. Läuft zusätzlich auf dem Server/Shared Hosting-Paket ein komplexeres Content Management System, könnten Leistungseinbussen bei der Auslieferung der Seiten auftreten.

Datenschutz

Das Thema Datenschutz soll hier auch noch kurz angerissen werden: Logdateien von Servern enthalten Daten, aus denen Rückschlüsse über das Klickverhalten der anonymisierten Nutzer gezogen werden können. Einerseits wird diese Möglichkeit von den Seitebetreibern genutzt, um das eigene Angebot zu verbessern und andererseits können durch aggressive “crawlende” Robots verursachte Probleme aufgespürt und behoben werden. Daraus ergibt sich jedoch, dass diese Daten nur unter bestimmten Voraussetzungen und nur von authorisierten Personen (z. B. dem Seitenbetreiber) ausgewertet werden dürfen. Mehr darüber findet sich im Gesetz über den Datenschutz bei Telediensten.

So, genug des Vorgeplänkels, auf zur Praxis.

phpMyVisites

Das aus Frankreich stammende phpMyVisites und als Open Source erhältliche PHP-Skript ist recht einfach durch eine geführte Installation auf dem Server einzurichten und benötigt eine MySQL-Datenbank. Der Trigger wird als kleines Javascript in die Seiten eingebunden. Das Backend ist sehr übersichtlich (siehe Bild links) und erlaubt damit das rasche Zurechtfinden. Die Daten werden grafisch aufbereitet dargestellt und sind damit einfach zugänglich. Neben den besuchten Seiten und der verbrachten Zeit pro Seite werden die Konfigurationen der Besucher erfasst (OS, Browser, Plugins, Bildschirmauflösungen). Referrer und Suchworte sind ebenfalls enthalten und es können Gastzugänge zum Einsehen der Statistiken eingerichtet werden.
Nicht vorhanden ist die Erfassung der Suchroboter. Ferner offenbarten sich mir Probleme mit dem Skript bei bestimmten Hostern, die den Zend Optimizer einsetzen. So lief das Skript auf den Hosting Paketen von Hosteurope nach einiger Zeit nicht mehr, da kein Zugang zum Backend mehr möglich war. Dieser Bug ist bekannt und soll mit der aktuellen Version 2.3 beta 3 behoben sein. Allerdings rät der Autor von einem Live-Einsatz der Beta auf einem Produktivsystem ab.

Vorteile:

  • grafisch sehr eingängige Darstellung
  • differenzierte Anzeige der vorhandenen Plugins beim Besucher (u. a. Java, Javascript, Flash, Quicktime)
  • Gastzugänge
  • Administration im Backend
  • Ausschliessen das Administrators/IP-Bereichen von den Statistiken

Nachteile:

  • Einbindung des Triggers per Javascript/Web Bug
  • Probleme auf manchen Hosting Umgebungen mit dem Zend Optimzier

Links zu phpMyVisites:

slimStat

SlimStat macht seinem Namen alle Ehre und ist ein sehr kleines und kostenloses (GP-Lizenz) PHP-Skript. Es ist aus dem von Shaun Inman entwickelten ShortStat entstanden – Shaun Inman ist der Autor des sehr populären Statistiktools Mint. Slimstat benötigt ebenfalls eine MySQL-Datenbank. Die Installation ist zügig abgeschlossen, der Trigger wird per include-Befehl eingebunden. Das Backend ist übersichtlich aufgebaut (siehe Bild links). Die erhobenen Daten werden ausschliesslich numerisch dargestellt und das auch nur in begrenztem Umfang. Die populärsten Infos wie die Visits und Hits der häufigsten und letztbesuchten Seiten kann man neben den Referrern, Suchstrings, Bestriebssystemen und Browsern der Besucher einsehen. Damit erschöpft sich das Angebot an Statistik auch schon. Administrierbar ist slimStat über eine Konfigurationsdatei und nicht via Backend. Gastzugänge können nicht eingerichtet werden.
Beim Vergleichen der Statistiken einer Seite im Vergleich mit einem anderen Tool offenbarte sich mir eine Überraschung: slimStat erzeugt exorbitant hohe Visits, die in meinen Tests 3-4fach über den Werten lagen, die Google Analytics produzierte. Auch das ist ein schon diskutiertes Problem. Abhilfe lässt sich wohl durch das Modifizieren der Core-Datein schaffen, indem man z. B. Suchmaschinen-Spider ausschliesst.

Vorteile:

  • klein und übersichtlich
  • Einbindung des Triggers per PHP

Nachteile:

  • verzerrte Statistik/zu hohe Werte
  • zu wenig Optionen/Daten
  • begrenzte Administration per Konfigurationsdatei

Links zu slimStat:

chCounter

Durch einen Tip von Sven bin ich auf den chCounter aufmerksam geworden. Auch hier erfolgt die Installation wieder durch ein geführtes Skript. Nach dem Einrichten stehen umfangreiche Statistiken zur Verfügung (siehe Bild links), die auch die crawlenden Bots mit einschliessen. Neben der numerischen Anzeige erfolgte die differenzierte Darstellung der Daten als Balkendiagramme. Die Komplexität des Backends aufgrund der vielfältigen Daten ziehen es nach sich, dass man eine Weile braucht, um sich zielgerichtet durch die Statistiken zu bewegen. Der Trigger wird per include eingebunden. Eine Besonderheit bei diesem Skript ist es, dass man verschiedene Werte (z. B. Besucher gesamt oder Besucher gestern) in das Frontend per Platzhalter einbinden kann, die dann vom chCounter mit den Werten ersetzt werden. Die Daten decken sich meinen Beobachtungen weitestgehend mit den von Google Analytics erhobenen. Ein weiterer Vorteil ist die Erfassung der Suchmaschinen-Bots und der Ausschluss von Bots/IPs aus den Statistiken. Somit können aggressiv “crawlende” Bots erkannt und per Statistik-Ausschluss/htaccess-Ausschluss daran gehindert werden, den Server unnötig zu belasten. Die Administration birgt differenzierte Einstellungsmöglichkeiten ink. Ausschluss des Administrators und das Einrichten von Gastzugängen.

Vorteile:

  • ausführliche Statistiken inkl. Suchmaschinenspidern
  • Gastzugang möglich
  • Einbindung ins Frontend
  • differenzierte Administration im Backend
  • Ausschluss des Adminstrators aus der Erhebung
  • Blacklist für IPs und Bots

Nachteile:

  • begrenzte Erfassung der Besucherkonfiguration (z. B. ohne Plugins)

Links zum chCounter:

Google Analytics

Der webbasierte Dienst Google Analytics ist recht populär und kostenlos zu nutzen. Das Backend ist durch den Einsatz von AJAX und einer attraktiven (aber auch komplexen) Oberfläche komfortabel zu benutzen. Der Trigger wird via Javascript eingebunden (Copy & Paste). Eine Besonderheit ist der Modus “Webseite-Overlay” – via Anzeige der Klicks direkt auf dem Frontend der Seite kann man auf der zu untersuchenden Webseite die einzelnen Seiten analysieren. Die übrigen zur Verfügung gestellten Daten sind sehr differenziert aufbereitet, sei es die Besucherkonfiguration oder oder besuchten Webseiten.
Bei Google Analytics bleibt als Nachteil die serverseitige Speicherung der Daten und die Monopolisierung der Datenhaltung zu nennen. Ich will keine Diskussion über den “Datenkraken” Google vom Zaun brechen, Fakt ist jedoch, dass aus datenschutzrechtlichen Gründen ein kleiner bitterer Nebengeschmack nicht wegzudiskutieren ist.

Vorteile:

  • einfache Einbindung des Dienstes
  • umfangreiche Statistikfunktionen
  • modernes Backend

Nachteile:

  • Fremddienst
  • Monopolstellung

Links zu Google Analytics:

Fazit

Für mich hat sich folgendes Fazit herauskristallisiert: Serverseitige PHP-Skripte sind aufgrund der damit verbundenen Unabhängigkeit und Unkompliziertheit meine Favoriten (im Gegensatz zu den webdienstbasierten Countern).

Bei einem kompatiblem Hoster und notwendigem Zugriff auf die Statistiken durch die Kunden per Gastzugang ist phpMyVisites aufgrund des aufgeräumten Backends die erste Wahl. Der chCounter bewährt sich beim Erheben von Statistiken, auf die nur der Administrator Zugriff hat, da die Komplexität des Backends eine gewisse Einarbeitung erfordert. Google Analytics lässt sich schnell und unkompliziert bei einer Seite einrichten, bei der man keine Möglichkeit oder Zeit, PHP-Skripte zu installieren/einzurichten. SlimStat ist meiner Meinung nach im Moment noch nicht ausgereift genug, um ohne Modifikationen im Core verlässliche Werte zu liefern.

Was gibt es noch?

Mint ist ein ebenfalls populäres, serverseitiges PHP-Skript, dass für mich im Moment aufgrund des Preises von 30 $ keine Option ist. Mit dem Tool AWSats habe ich keine Erfahrungen, ebenso nicht mit weiteren Webdiensten wie Shiny Stats. Der auf vielen Hoster vorinstallierte Webalizer ist mittlerweile veraltet, die letzte Version ist von 2002 – damit gelingen keine exakten Statistiken.

Über Ergänzungen und Anmerkungen würde ich mich freuen!

 

...hier geht's zum Formular ↓

1

> Geschrieben von Steffen am 16.07.2007 um 21:55

Ich nutze in eigenen Projekten immer den chCounter, zwischenzeitlich habe ich in meinem Blog phpMyVisites installiert (http://3ckig.de/blog/statistiken-mit-phpmyvisites) und festgestellt: Unbrauchbarer Downloadcounter und extrem viele Datenmengen und Schaubilder, dass man einen Sekretär braucht um da durchzusteigen.(http://3ckig.de/blog/doch-kein-phpmyvisites)
chCounter und slimStat bevorzuge ich da, da man dort auf einen Blick das findet, was ich wissen will.

 

2

> Geschrieben von Frank am 16.07.2007 um 22:18

Ich werde mal drauf achten - bis jetzt finde ich phpMyVisites sehr brauchbar. Mein Favorit ist jedoch auch der chCounter.

 

3

> Geschrieben von musicampus am 17.07.2007 um 07:38

Der erste Dienst, den ich benutzt habe, war statcounter (http://www.statcounter.com), bis mich ein Freund überzeugt hat, 4stats zu probieren (http://www.4stats.de). Die grundlegende Auswertung ist gratis - wer aber mehr möchte, muss bezahlen.

Trotz des Preises von 30$ benutze ich seit April mint und bin damit sehr zufrieden. Aufgrund des modularen Aufbaus kann man sich über verschiedene "Pepper" seine ganz persönliche Auswertungsansicht zusammenstricken.

 

4

> Geschrieben von Dominik am 03.08.2007 um 15:28

Ich möchte noch Reinvigorate http://www.reinvigorate.net/ einwerfen.

LG
Dominik

 

5

> Geschrieben von andreas am 03.08.2007 um 20:02

meiner Meinung nach noch ein Nachteil von phpMyVisites ist, das man die Webseiten nicht in php geschrieben sein dürfen.

 

6

> Geschrieben von Steffen am 03.08.2007 um 20:03

Wieso denn das?
Man kann doch in jede Seite x-beliebig programmiert einen JavaScript Code einbinden...

 

7

> Geschrieben von Frank am 03.08.2007 um 20:13

Jo, wollte ich auch gerade sagen. Ich habe phpMyVisites mit einer Joomla-Seite und einer PHP-Eigenentwicklung in Betrieb.

@Dominik: Danke, das schaue ich mir demnächst mal an!

 

8

> Geschrieben von andreas am 04.08.2007 um 09:58

@steffen,

steht in der dokumentation!

 

Die mit * markierten Felder sind Pflichtfelder. Deine E-Mail Adresse wird im Beitrag nicht angezeigt.