Langjährige Leser und solche, die gern mal in anderer Leute Quellcode herumforschen, hatten es möglicherweise bereits mitbekommen: Für diese Website sowie einige meiner Projekte kam jahrelang das Statistikwerkzeug Matomo – schon unter seinem alten Namen – zum Einsatz. Hierfür band ich statt der Verwendung als Loganalyseprogramm ein Zählscript auf einigen Seiten ein, das die Besucherdaten direkt live in eine wachsende Datenbank schrieb, sofern die Besucher JavaScript aktiviert und/oder das Opt-Out-Cookie nicht gesetzt hatten.
Nun ist eine solche Software zwar im Prinzip sehr praktisch für Menschen einer unfeinen Profession, nämlich Werber und ähnliche Heinis, aber der Big-Data-Aspekt dieses Programms, das wesentlich mehr Statistiken rausblies als ich brauchen konnte (letztendlich interessieren mich am meisten die Herkunftsseiten und die ungefähren Aufrufzahlen), vertrug sich nur mittelmäßig mit meinem anderweitigen Pochen auf Datenschutz. Mehr noch: Matomo ist ein herausragendes Beispiel für fast alles, was ich an heutiger Webentwicklung in PHP nicht leiden kann; so blinkte etwa seit dem letzten größeren Versionsupdate ein roter Fehlerbalken kurz auf, dessen Ursprung mir unklar geblieben ist. Mehr als einmal musste ich auch die Software (immerhin nicht die Datenbank) neu installieren, weil irgendein Script bei der Aktualisierung zwischen zwei Betaversionen – ja, ich bin mir des Problems bewusst – irgendwelche Fehler gemacht hatte, die im Bugtracker des Matomoprojekts zwar fast immer schon bekannt, aber selten einfach zu lösen waren.
Da ich seit einiger Zeit versuche, die Nutzung von PHP-Scripts (zusammen mit in Python geschriebenen Scripts, die Gründe sind ähnlich) auf meinen Servern und Webspaces zu reduzieren und langfristig ganz einzustellen, habe ich auch über die Nutzung von Matomo nochmals, wie man es wohl heutzutage nennt, ergebnisoffen nachgedacht. Dieses Nachdenken hatte Erfolg, denn auf Uberspace.de, auf deren Servern ich nach mehreren Wechseln in kurzer Zeit seit neun Jahren einigermaßen zufrieden den Kram hier mache, gibt es bereits anonymisierte und ausführliche Logdateien. Warum werte ich nicht einfach die aus?
Genau das mache ich jetzt. Bei den Recherchen hierzu war mir aufgefallen, dass die Welt der Webserverloganalyse sich in den letzten zwanzig Jahren doch recht stark verändert hat; so ist zum Beispiel die Entwicklung des Webalizers anscheinend beendet und der Betrieb von AWStats, das immerhin noch gepflegt wird, bedarf bei Uberspace anscheinend – der Tweet ist jedoch von 2014 – einiger Umstände, die ich weder mir noch anderen unbedingt bereiten möchte.
Bei Dirk Deimeke, der aber jetzt doch lieber etwas anderes verwendet, und in so Foren fand ich den Hinweis auf GoAccess, das in C geschrieben ist und aus den vorhandenen Logdateien nicht nur eine vergleichsweise hübsche HTML-Ausgabe generieren, sondern mittels eines eingebauten Datenbanksystems auch mit nur sieben Tage lang vorgehaltenen Logdateien eine längerfristige Historie anlegen kann.
Auf Uberspace 7 ist die veraltete Version 1.3 bereits installiert, da aber Version 1.4 ein neues Datenbankformat hat, das mit der alten Version nicht mehr kompatibel ist, habe ich beschlossen, meine eigene Installation zu betreiben. Mithilfe eines Cronjobs – mögliche Parameter sind hier erklärt – erzeuge ich momentan, absichtlich auf die Echtzeitanalyse verzichtend, alle zehn Minuten eine neue HTML-Datei mit den für mich interessanten Daten, die die vorherige HTML-Datei ersetzt, und spare auf diese Weise nicht nur Arbeitsspeicher (weniger Datenbank, weniger PHP), sondern habe auch ein etwas ruhigeres Gewissen, was den Umgang mit meinen Besuchern betrifft. Dass mich künftige Updates nicht mehr ohne Vorwarnung unschön stolpern lassen dürften, rundet die Sache für mich ab.
Ich kann das wärmstens weiterempfehlen.
Ich habe persönlich sowohl gute Erfahrungen mit der aktuellen Version von AWStats gemacht (vgl. https://netz-rettung-recht.de/archives/1945-Logfile-Auswertung-mit-AWStats.html) als auch mit Fathom; letzteres ist allerdings kostenfplichtig (und, nicht zuletzt aufgrund der datenschutzfreundlichen Grundstruktur, nicht sehr ergiebig).
Kostenpflichtig interessiert mich nicht.
Und ich dachte immer das sei in Go geschrieben…
Zum Glück nicht, da wär der RAM wahrscheinlich doch voll.
Für meine Zwecke tuts auch das WordPress Plugin Statify.
Ich möchte einfach nur wissen, wie oft meine Seite in etwa aufgerufen wurde und welche Beiträge am meisten aufgerufen wurden. Mehr nicht.
Ich habe nicht nur WordPress hier installiert und auch das ist nicht sicher immer da.
Wie kommst du darauf, dass du langjährige Leser hättest?