GNU/Linux >> LINUX-Kenntnisse >  >> Linux

GoAccess – Ein Echtzeit-Apache- und Nginx-Protokollanalysator

GoAccess ist ein Echtzeit-Protokollanalysator für Webserver auf Unix/Linux-Systemen. Es ermöglicht auch den Zugriff auf Protokolle über den Webbrowser. Der Hauptzweck besteht darin, Benutzern eine schnelle Möglichkeit zu bieten, Webserverstatistiken in Echtzeit zu analysieren und anzuzeigen, ohne dass ein Webbrowser erforderlich ist.

Es unterstützt die meisten Webprotokollformate (Apache, Nginx, Amazon S3, Elastic Load Balancing, CloudFront, Caddy usw.). Sie müssen nur das Protokollformat festlegen und verwenden. GoAccess generiert auch ein vollständiges, eigenständiges Echtzeit-HTML Bericht, der für Analysen, Überwachung und Datenvisualisierung hilfreich ist. Es unterstützt auch JSON und CSV Berichte.

Dieses Tutorial beschreibt, wie Sie GoAccess auf Ihren Linux-Systemen installieren und verwenden.

GoAccess installieren

Die meisten Linux-Betriebssysteme enthalten GoAccess-Pakete in ihren offiziellen Repositories. Sie können es also einfach mit dem Paketmanager installieren.

  • Debian-basierte Systeme:
    sudo apt-get update && sudo apt-get install goaccess -y
    
  • Redhat-basierte Systeme:
    yum install goaccess
    
  • Arch-Linux:
    pacman -S goaccess
    

Besuchen Sie für andere Betriebssysteme diese Seite, um Goaccess zu installieren.

GoAccess vom Terminal aus verwenden

Wählen Sie die Protokolldatei basierend auf Ihrem Betriebssystem und verwendeten Webserver aus. Auf Debian-basierten Systemen werden Protokolle unter /var/log/apache2 generiert -Verzeichnis und das Redhat-basierte System Apache erstellen Protokolle unter /var/log/httpd Verzeichnis. Verwenden Sie -f Option zum Definieren der Protokolldatei mit dem Befehl goaccess.

goaccess -f /var/log/apache2/access.log

Wählen Sie dann das Protokollformat aus. Das standardmäßige Apache-Protokollformat ist COMBINED.

Mit GoAccess können Sie auch das Protokollformat mit --log-format definieren Befehlszeilenoptionen. Um beispielsweise das Protokollformat COMBINED zu verwenden, lautet der Befehl:

sudo goaccess /var/log/apache2/access.log --log-format=COMBINED

Sie sehen die Ausgabe auf der Systemkonsole wie folgt:

Drücken Sie „Q“, um den GoAccess-Terminal-Viewer zu verlassen.

GoAccess-Ausgabe im Web-Dashboard anzeigen

Mit GoAccess können Benutzer Berichte in verschiedenen Formaten wie HTML, JSON und CSV erstellen. Das HTML-Format erzeugt eine HTML-Seite mit allen Daten im visuellen Format. Wir können den Bericht generieren, indem wir den folgenden Befehl in einer HTML-Datei verwenden.

Lassen Sie uns eine HTML-Berichtsdatei unter /var/www/html erstellen , das ist das standardmäßige Dokumentenstammverzeichnis auf meinem Apache-Server. Der folgende Befehl generiert einen HTML-Bericht:

sudo goaccess /var/log/apache2/access.log --log-format=COMBINED -a -o /var/www/html/report.html
  • -a – Aktivieren Sie eine Liste von Benutzeragenten nach Host
  • -o – Wird verwendet, um die Ausgabedatei
  • zu definieren
  • Das Ausgabeformat wird automatisch basierend auf der Erweiterung des Ausgabedateinamens ausgewählt

Greifen Sie als Nächstes über die Server-IP-Adresse oder den Domänennamen auf report.html zu.

Blättern Sie nach unten zur Webseite, um weitere Informationen anzuzeigen.

Web-Dashboard-Datei automatisch aktualisieren

Sie können den goaccess-Befehl so planen, dass der HTML-Bericht in regelmäßigen Abständen aktualisiert wird. Erstellen Sie ein Shell-Skript mit folgendem Inhalt:

/opt/goaccess.sh:

Shell