GoAccess auf CentOS 7 installieren: Analyse von Webserver-Logs in Echtzeit
GoAccess ist ein quelloffenes Tool zur Analyse von Webserver-Zugriffsprotokollen. Es erlaubt die Auswertung in Echtzeit – entweder direkt im Terminal oder über einen Webbrowser. Die Software unterstützt verschiedene Logformate und kann Berichte im HTML-, JSON- oder CSV-Format erstellen.
Diese Anleitung beschreibt, wie du die aktuelle Version von GoAccess auf einem Server mit CentOS 7 installierst.
Voraussetzungen
- Ein 64-Bit-CentOS-7-Server
- Ein Benutzerkonto mit sudo-Rechten
Schritt 1: System aktualisieren
Bevor neue Pakete installiert werden, empfiehlt es sich, das System auf den neuesten Stand zu bringen. Melde dich mit einem Benutzer an, der über sudo-Rechte verfügt, und führe folgende Befehle aus:
sudo yum -y install epel-release
sudo yum -y update
sudo shutdown -r now
Sobald der Server neu gestartet wurde, kannst du dich erneut als sudo-Benutzer anmelden und mit der Installation fortfahren.
Schritt 2: Notwendige Pakete installieren
Da GoAccess in der Programmiersprache C geschrieben wurde, wird das Paket ncurses
sowie der Compiler gcc
benötigt. Installiere diese über den folgenden Befehl:
sudo yum -y install ncurses-devel gcc
Wenn du zusätzliche Funktionen aktivieren möchtest, kannst du die optionalen Abhängigkeiten wie folgt installieren:
sudo yum -y install geoip-devel tokyocabinet-devel
Schritt 3: GoAccess installieren
Lade zunächst das GoAccess-Tarball-Archiv mit dem folgenden Befehl herunter:
wget http://tar.goaccess.io/goaccess-1.2.tar.gz
Die aktuellste Version findest du jederzeit auf der offiziellen Downloadseite von GoAccess.
Entpacke das Archiv nach dem Herunterladen mit folgendem Befehl:
tar -xzvf goaccess-1.2.tar.gz
Wechsle in das entpackte Verzeichnis, konfiguriere die Build-Optionen und kompiliere GoAccess:
cd goaccess-1.2
sudo ./configure --enable-utf8 --enable-geoip=legacy
sudo make
sudo make install
Erstelle abschließend einen symbolischen Link, damit GoAccess systemweit verfügbar ist:
sudo ln -s /usr/local/bin/goaccess /usr/bin/goaccess
Damit ist GoAccess erfolgreich auf deinem CentOS-7-System installiert.
Schritt 4: GoAccess zur Weblog-Analyse verwenden
GoAccess dient zur Analyse von Webserver-Protokollen. Falls auf deinem System noch kein Webserver installiert ist, kannst du Apache mit folgendem Befehl einrichten:
sudo yum -y install httpd
Aktiviere und starte den Apache-Dienst, damit er beim Booten automatisch ausgeführt wird:
sudo systemctl start httpd
sudo systemctl enable httpd
Erlaube HTTP-Verbindungen in der Firewall, damit der Server von außen erreichbar ist:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload
Um die Logdatei direkt im Terminal mit GoAccess zu analysieren, führe diesen Befehl aus:
sudo goaccess /var/log/httpd/access_log --log-format=COMBINED
Nach der Auswertung zeigt GoAccess einen Bericht wie das folgende Beispiel:
Dashboard - Gesamtzahl analysierter Anfragen (29/Jun/2017 - 29/Jun/2017) [Aktives Panel: Besucher] Gesamtanfragen 16 Eindeutige Besucher 1 Eindeutige Dateien 1 Referrer 0 Gültige Anfragen 16 Verarb. Startzeit 0s Statische Dateien 4 Loggröße 3.92 KiB Fehlgeschl. Anfr. 0 Ausgeschl. IP Hits 0 Einz. 404-Fehler 6 Bandbreite 41.82 KiB Logquelle /var/log/httpd/access_log > 1 - Eindeutige Besucher pro Tag – inkl. Bots Gesamt: 1/1 Aufrufe h% Besucher v% Bandbreite Datum ------- --- ----------- ----------- ---------- 16 100.00% 1 100.00% 41.82 KiB 29/Jun/2017 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 2 - Angeforderte Dateien (URLs) Gesamt: 1/1 Aufrufe h% Besucher v% Bandbreite Methode Protokoll Pfad ------- --- ----------- ----------- ------- --------- ---- 2 100.00% 0 0.00% 9.56 KiB GET HTTP/1.1 / 3 - Statische Anforderungen Gesamt: 4/4 Aufrufe h% Besucher v% Bandbreite Methode Protokoll Pfad ------- --- ----------- ----------- ------- --------- ---- [?] Hilfe [Enter] Panel erweitern 0 - Do 29. Juni 2017 10:20:31 [Q]uit GoAccess 1.2
Um einen HTML-Bericht mit interaktiven Grafiken zu erstellen, nutze diesen Befehl:
sudo goaccess /var/log/httpd/access_log --log-format=COMBINED -a -o /var/www/html/report.html
Fazit
Wenn du dieser Anleitung folgst, installierst und konfigurierst du GoAccess erfolgreich auf einem CentOS-7-System. Mit diesem leistungsstarken Tool lassen sich Zugriffsprotokolle deines Webservers in Echtzeit auswerten – sowohl im Terminal als auch über einen Browser. Egal, ob du Besucherstatistiken, Zugriffsverläufe oder Bandbreitenverbrauch analysieren willst: GoAccess bietet eine effiziente, grafisch aufbereitete Übersicht deiner Serveraktivität. So lassen sich Probleme erkennen, die Leistung verbessern und das Besucherverhalten gezielt nachvollziehen.