Die Analyse von Access Logs ist für Webadministratoren essenziell, um Besucherströme, Fehler und Performanceprobleme zu erkennen. GoAccess ist ein leistungsfähiges, leichtgewichtiges Tool, das Echtzeit-Insights aus Nginx- oder Apache-Logs liefert. In diesem Tutorial zeigen wir Schritt für Schritt, wie GoAccess installiert, konfiguriert und effektiv genutzt wird.
GoAccess installieren
GoAccess ist auf den meisten Linux-Distributionen direkt verfügbar oder kann aus den Quellen kompiliert werden.
Installation über Paketmanager
# Debian/Ubuntu
sudo apt update
sudo apt install goaccess -y
CentOS/RHEL
sudo yum install epel-release -y
sudo yum install goaccess -y
Installation aus Quellen
Für die neueste Version kann GoAccess auch kompiliert werden:
git clone https://github.com/allinurl/goaccess.git
cd goaccess
autoreconf -fiv
./configure --enable-utf8 --enable-geoip=legacy
make
sudo make install
Log-Dateien vorbereiten
GoAccess benötigt Zugriff auf die Access Logs des Webservers. Bei Nginx befinden sich diese typischerweise unter /var/log/nginx/access.log, bei Apache unter /var/log/apache2/access.log.
Logformat prüfen
GoAccess muss das Logformat kennen:
- Nginx Standard:
log_format combined '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"'; - Apache Standard:
LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
GoAccess im Terminal ausführen
Für schnelle Insights kann GoAccess direkt in der Konsole gestartet werden:
goaccess /var/log/nginx/access.log --log-format=COMBINED
Die wichtigsten Kennzahlen werden interaktiv dargestellt, darunter Besucherzahlen, Statuscodes, Referrer und User Agents.
Optionen für Echtzeit-Analyse
-f: Logdatei angeben--log-format: Logformat definieren--real-time-html: Web-basierte Echtzeitansicht
HTML-Reports erzeugen
Für eine übersichtliche Darstellung oder Archivierung kann GoAccess HTML-Reports erzeugen:
goaccess /var/log/nginx/access.log
--log-format=COMBINED
-o /var/www/html/report.html
Der Report enthält Besucherstatistiken, Top-URLs, HTTP-Statuscodes und Traffic-Karten.
Logrotation berücksichtigen
Bei regelmäßig rotierenden Logs (z.B. durch logrotate) muss GoAccess auf die aktuellen Dateien zugreifen. Entweder direkt nach Rotation ausführen oder mittels cat zusammenführen:
cat /var/log/nginx/access.log* | goaccess - --log-format=COMBINED
Geografische Auswertung
Mit GeoIP-Daten können Besucher nach Ländern oder Städten visualisiert werden:
goaccess /var/log/nginx/access.log
--log-format=COMBINED
--geoip-database /usr/share/GeoIP/GeoIP.dat
-o /var/www/html/report_geo.html
Die interaktive Karte zeigt Herkunft der Requests und mögliche Hotspots.
Best Practices
- Regelmäßige Reports automatisieren mit Cronjobs
- Nur relevante Logzeilen analysieren, z.B. über
grepFilter - HTML-Reports auf einem sicheren Pfad ablegen und Zugriff einschränken
- Bei großen Logs die
--keep-db-filesOption nutzen, um inkrementelle Analysen zu ermöglichen - Integrationen mit Prometheus oder Grafana für erweiterte Dashboards prüfen
CLI-Integration und Scripting
GoAccess eignet sich auch für automatisierte Auswertungen in Skripten:
# Letzten Tag analysieren und HTML-Report erstellen
yesterday=$(date -d "yesterday" +"%Y-%m-%d")
goaccess /var/log/nginx/access.log-$yesterday
--log-format=COMBINED
-o /var/www/html/report_$yesterday.html
Fazit zur Log-Analyse mit GoAccess
GoAccess bietet eine schnelle und interaktive Möglichkeit, Webserver-Zugriffe auszuwerten. Mit minimalem Setup lassen sich Besucherzahlen, Fehlerquoten, Top-URLs und geografische Informationen analysieren. Die Kombination aus CLI, Echtzeitansicht und HTML-Reports macht GoAccess zu einem unverzichtbaren Tool für Monitoring und Web Analytics.
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3
Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.
Meine Leistungen umfassen:
-
Professionelle Konfiguration von Routern und Switches
-
Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen
-
Erstellung von Topologien und Simulationen in Cisco Packet Tracer
-
Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG
-
Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible
-
Erstellung von Skripten für wiederkehrende Netzwerkaufgaben
-
Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege
-
Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting
Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.











