On Wed, 11 Feb 2009 09:21:32 +0100, Axel Birndt
Ralf Prengel schrieb:
Ich möchte die Bewegungen der Kunden auf unserer Seite tracken. Letzlich stehen ja alle Informationen schon in den apache-logs. Es geht darum den Aufbau unserer Seite zu optimieren. Es geht natürlich nicht darum zu erfahren auf welchen anderen Seiten Besucher schon waren. http://freshmeat.net/projects/apache2gdl/ geht möglichweise in die Richtung.
Hallo Ralf,
das was Du brauchst ist glaub ich sowas wie google-Analytics.
Im Prinzip kannst Du das machen, indem Du auf jeder Seite einen Transparenten Pixel einbindest und diesen auf einem eigenen Server bei Euch ablegst. Dann bekommst Du einen "Ping" von jeder Seite, die die Nutzer aufrufen. Da kannst Du dann auch auswerten, welche IP welche Seite zu genau welcher Zeit und in welcher Reihenfolge aufgerufen hat.
Darüber können dann natürlich auch Statistiken u.v.m. erstellt werden.
Vielleicht ist dies ja der entscheidende "Schubs" der Dir noch fehlte...
Gruß Axel
Die Zählpixel sind nur nötig, wenn jemand (hier Google) von außerhalb die Bewegungen nachvollziehen will. Da Ralf über die Logfiles verfügt, hat er bereits alle Daten, die er braucht, und muss nichts mehr einbauen. Im Prinzip lässt sich so etwas sogar schon mit Shellskripten verwirklichen. Ein Ansatz könnte etwa so aussehen: awk '{print $1}' access_log | sort | uniq > ipliste.txt Damit hätte man schon mal eine sortierte Liste aller zugreifenden IPs. Im zweiten Schritt könnte man ipliste.txt hernehmen, zeilenweise abarbeiten und aus dem Logfile mit grep einen Auszug sämtlicher Zugriffe pro IP erstellen: grep '$ip' access_log \ | awk '{print $1,$4,$7}' \ > $ip.txt In diesem Beispiel werden zunächst alle aufgrufenen Dateien gelistet, also auch *.gif, *.jpg und so weiter. Sofern nur HTML-Dateien gesucht werden sollen, müsste hier ein weiterer Filter zwischengeschaltet werden, der nur *.htm, *.html, *.php oder was auch immer durchlässt. Diese Auszüge sind bereits nach Zeitpunkt des Zugriffs sortiert, zeigen also die Reihenfolge, in der die Besucher die Seiten augerufen haben, weil sie ja in der Reihenfolge des Eingangs aus dem Logfile herausgezogen werden. Das Ergebnis sind Dateien, die jeweils eine chronologische Darstellung aller Zugriffe pro IP enthalten. Aufgeführt werden hier nur noch IP, Datum/Zeit und aufgerufene Seite, oder was man sonst eben so braucht: ip1.txt IP 1 - Datum, Zeit - 1. aufgerufene Seite IP 1 - Datum, Zeit - 2. aufgerufene Seite ip2.txt IP 2 - Datum, Zeit - 1. aufgerufene Seite IP 2 - Datum, Zeit - 2. aufgerufene Seite ip3.txt IP 3 - Datum, Zeit - 1. aufgerufene Seite Je nach Bedürfnis und Format der Logfiles müssten die Felder $1, $4 und $7 angepasst/ergänzt werden. Wenn gewünscht, kann man auch noch logresolve 2 über die Daten laufen lassen: logresolve2 < input > output Das Programm verwandelt die IPs in Domainnamen. Die Einzeldateien IPn.txt kann man mithilfe von ipliste.txt und cat auch gleich wieder zu einer großen Datei zusammenkleistern und anschließend löschen, umkopieren, mit tr/sed in eine HTML-Datei umbauen, die man mit dem Browser aufrufen kann, und und und. Solange die Logfiles nicht zu groß sind, klappt das prima mit Shell-Befehlen, sonst wäre wegen der besseren Verarbeitungsgeschwindigkeit Perl oder so etwas vorzuziehen. Möglicherweise habe ich hier Flüchtigkeitsfehler gemacht, aber im Prinzip kann das wohl so funktionieren. So, und jetzt warte ich nur noch auf einen passenden Einzeiler, der das alles viel besser und effizienter erschlägt ... Jürgen -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org