Wie wird mein Webangebot genutzt? (Teil 1)
Wie wird mein Webangebot genutzt? (Teil 1)
Blogbeitrag vom
Wer ein Webangebot online stellt, will in der Regel, dass es von möglichst vielen Kindern besucht und angesehen wird. Nur: wie stellt man fest, wie viele es sind und was genau sie ansehen?
Log-Dateien
Eine einfache, wenn auch grobe Antwort liefern die Log-Dateien, in denen Webserver alle Vorgänge und auftretende Fehler protokollieren. In der Regel werden Fehler im Error-Log und Requests im Access-Log aufgelistet.
Ein Request findet statt, wenn ein Browser den Webserver kontaktiert, um eine HTML-Seite, ein Bild oder eine andere Datei herunterzuladen.
Requests beziehen sich immer auf genau eine Datei. Lädt ein Browser eine HTML-Seite, auf der sechs Bilder angezeigt werden, sind dafür sieben Requests nötig: einer für die HTML-Seite, sechs weitere für die Bilder.
Jeder Request erzeugt eine Zeile im Access-Log, in der unter anderem vermerkt wird,
- zu welchem Zeitpunkt der Request stattgefunden hat,
- welche Datei heruntergeladen wurde
- welches Browserprogramm benutzt wurde
- und auf welcher HTML-Seite die heruntergeladene Datei verlinkt war (der Referrer).
Die Zeilen werden dabei chronologisch abgelegt.
Typische Einträge im Access-Log sehen so aus:
192.168.217.51 - - [01/Feb/2014:06:26:51 +0000] "GET /index.html HTTP/1.1" 200 6922 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.59.10 (KHTML, like Gecko) Version/5.1.9 Safari/534.59.10"
192.168.217.51 - - [01/Feb/2014:06:26:51 +0000] "GET /css/m4k.css HTTP/1.1" 200 11458 "https://www.mail4kidz.de/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.59.10 (KHTML, like Gecko) Version/5.1.9 Safari/534.59.10"
192.168.217.51 - - [01/Feb/2014:06:26:51 +0000] "GET /logo.png HTTP/1.1" 200 8483 "https://www.mail4kidz.de/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.59.10 (KHTML, like Gecko) Version/5.1.9 Safari/534.59.10"
192.168.217.55 - - [01/Feb/2014:06:28:51 +0000] "GET /index.html HTTP/1.1" 200 6922 "http://lernportal.regenbogenheiligenhaus.de/computer-u-internetwissen" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)"
Erklärung der untersten Zeile:
IP-Adresse | 192.168.217.55 | IP-Adresse des anfordernden Computers |
Unbelegt | - | vorgesehen für RFC-1413-Identität, die jedoch standardmäßig (-) nicht ermittelt wird |
Wer | - | Ggf. Nutzername aus einer HTTP-Authentifizierung, sonst "-" |
Wann | [01/Feb/2014:06:28:51 +0000] | Zeitstempel (Datum, Uhrzeit, Zeitverschiebung) |
Was | "GET /index.html HTTP/1.1" | Anforderung, einer HTML-Datei, Übertragungsprotokoll |
Ok | 200 | HTTP-Statuscodes (200=Erfolgreiche Anfrage) |
Wie viel | 6922 | Ggf. Menge der gesendeten Daten (Byte), sonst (z. B. bei Umleitungen) "-" |
Woher | "http://lernportal.regenbogenheiligenhaus.de/computer-u-internetwissen" | Von welcher Internetseite (URI) wird angefordert, "-", wenn die Datei direkt aufgerufen wurde |
Womit | "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)" | Mit welchem Browser/Betriebssystem/Oberfläche |
Nachzählen
Das Access-Log erlaubt einfache Auswertungen über Requests, Seitenaufrufe, Besucher und Visits.
Die Anzahl der Requests ergibt sich aus der Anzahl der Zeilen im Access-Log. Die kann man einfach durchzählen.
Zählt man nur die Einträge, die sich auf HTML-Dateien beziehen, erhält man die Anzahl der Seitenaufrufe.
Sortiert man die Seitenaufrufe nach der URL, kann man leicht auswerten, welcher Bereich eines Webangebotes am beliebtesten ist.
Die Auswertung der Besucher und Visits ist etwas komplizierter:
Es muss zunächst geschaut werden, welche Seitenaufrufe die selbe Kombination aus IP-Nummer und Browser-Kennung enthalten. Ist diese Kombination gleich, geht man davon aus, dass der Seitenaufruf vom selben Besucher stammt.
Für die Anzahl der Visits wird dann in der Folge für jeden Besucher aufgewertet, wie groß die zeitlichen Abstände zwischen den Seitenaufrufen sind. Ist der Abstand zwischen zwei Seitenaufrufen größer als 30 Minuten, beginnt ein neuer Visit. Anderenfalls wird der Seitenaufruf dem laufenden Visit zugeordnet.
Klickwege
Im Access-Log wird für jeden Request, also auch für jeden Seitenaufruf, festgehalten, auf welcher Seite der Benutzer auf einen Link geklickt und damit den Request ausgelöst hat.
Der letzte Beispieleintrag oben zeigt, dass der Benutzer von einem fremden Webangebot (lernportal.regenbogenheiligenhaus.de) gekommen ist und die Startseite (/index.html) aufgerufen hat.
Wertet man diese Einträge über die Zeit aus, kann man verfolgen, auf welchen Klickwegen sich die Benutzer im Webangebot bewegen.
Daraus kann man ersehen,welche Teile des Webangebotes leicht erreichbar bzw. besonders beliebt sind.
Zu sehen ist auch, wo es möglicherweise Probleme mit der Navigation im Webangebot gibt.
Beispiel: bewegen sich die Benutzer besonders oft von Unterseiten zur Startseite zurück, deutet dies darauf hin, dass eine Verlinkung der Seiten untereinander fehlt.
Log-Analyzer
Je nach Erfolg des Webangebots kann die Auswertung des Access-Logs einige Zeit in Anspruch nehmen - mindestens ein paar Minuten. Je mehr Requests, desto länger dauert die Zählung.
Live mitzählen ist also nicht möglich.
Auswertungen des Access-Logs finden deshalb meist zeitgesteuert statt. Der Webserver kann so konfiguriert werden, dass er automatisch zur vollen Stunde die Auswertung für die abgelaufene Stunde oder um Mitternacht die Auswertung für den abgelaufenen Tag erstellt.
Die Auswertung geschieht dann mit speziellen Programmen, sogenannten Log-Analyzern. Eines der beliebtesten dieser Programme ist AWStats (http://awstats.sourceforge.net/).
Wer sein Webangebot bei einem Webhoster abgelegt hat, findet in der Regel im Verwaltungstool für seinen Webspace einen Menüpunkt "Statistik", unter dem der Webhoster vorgefertigte Auswertungen anbietet.
Das Problem mit der IP-Nummer
Wie oben erwähnt, wird die Kombination auf IP-Nummer und Browser-Kennung gern benutzt, um die Besucher eines Webangebots zu unterscheiden. Nicht jedes Webangebot hat einen Login-Zwang, mit dem sich feststellen lässt, wer da gerade vor dem Computer sitzt.
Die Speicherung der IP-Nummer für die Webanalyse ist rechtlich umstritten. Nach Auffassung vieler Juristen gehört die IP-Nummer zu den personenbezogenen Daten, deren Speicherung und Nutzung den Datenschutzgesetzen unterliegt.
Dort ist unter anderem festgelegt, dass personenbezogene Daten nur dann zweckgebunden erhoben und zeitweilig gespeichert werden dürfen, wenn dafür vorher das Einverständnis des Benutzers eingeholt wurde.
Als Konsequenz müsste der Benutzer schon vor dem ersten Seitenaufruf gefragt werden, ob er mit der Nutzung seiner IP-Nummer einverstanden ist. Dazu müsste aber eine Webseite an ihn ausgeliefert werden, deren Aufruf der Webserver im Access-Log protokollieren würde – mit der IP-Nummer. Ein Henne-Ei-Problem, das praktisch nicht zu lösen ist.
Sind die Benutzer Kinder, müssen außerdem die Eltern um Erlaubnis gefragt werden. Auch das ist nicht praktikabel.
Das Problem lässt sich lösen, in dem die IP-Nummer entweder gar nicht oder in anonymisierter Form im Access-Log gespeichert wird.
Anonymisiert wird eine IP-Nummer, in dem ihr letzter Ziffernblock durch eine Null ersetzt wird. Aus der IP-Nummer 192.168.217.51 wird so die IP-Nummer 192.168.217.0, die nicht mehr eindeutig einem Benutzer zuzuordnen ist, weil alle IP-Nummern, die mit 192.168.217 beginnen, zu 192.168.217.0 werden.
Die Identifizierung von Visits durch die Kombination aus IP-Nummer und Browser-Kennung wird dadurch zwar unschärfer, aber als Betreiber ist man rechtlich auf der sicheren Seite.
Wer seinen Webserver selbst verwaltet, muss ihn entsprechend neu konfigurieren. Ist das Webangebot bei einem Webhoster abgelegt, kann dafür eventuell das Verwaltungstool des Webhosters benutzt werden.
Mitzählen
Die Analyse der Log-Dateien des Webservers liefert grundlegende Informationen darüber, wie ein Webangebot genutzt wird. Seitenaufrufe und Visits sind dabei die wichtigsten Indikatoren, die sich jeder Seitenbetreiber regelmäßig anschauen sollte.
Ein Nachteil der Log-Analyse ist allerdings, dass sie nur zeitversetzt zeigen kann, was in der vergangenen Stunde oder am Vortag passiert ist.
Wer live sehen will, welche Seiten die Benutzer gerade aufrufen und wie sie sich im Webangebot bewegen, muss zu einem Tracking-Tool greifen.