Skip to content

GoAccess - Visual Web Log Analyzer

Verschoben Linux
1 1 165
  • Es gibt ja einige Tools um die Logfiles von Webseiten auszulesen. Mir fallen dazu spontan noch folgende ein. Awstats, Piwik oder wie es mittlerweile heißt Matomo. Das führende dürfte Google Analytics sein. Jetzt nehmen wir mal an, wir möchten Google loswerden und machen das selber. Für einen Überblick dürften alle diese Tools reichen. Beim Umsehen bin ich über GoAccess gestolpert.

    Beim durchlesen der Dokumentation kam ich zu dem Ergebnis, das sieht gut aus, das probieren wir mal 😉 Also fing ich mal an ein wenig damit zu spielen. Das erste was auffiel, unter Debian reichte ein

    apt install goaccess
    

    Das freut den Admin 🙂 Mal schnell irgendwo her ein access.log kopiert und getestet. Sieht gut aus und sollte für mich völlig ausreichend sein.

    Auf der Webseite findet man haufenweise Beispiele. Mit folgendem Beispiel konnte ich mal testen.

    goaccess access.log -o /usr/share/nginx/html/site/report.html --real-time-html
    

    Danach konnte man sich das mit

    http://192.168.3.11/report.html
    

    anschauen. Eine Live Demo findet man hier.

    Dann kam die Überlegung, wie kann ich das mal ein wenig testen? Auf dem Server sollte es nicht drauf. Also kam es in eine VM bei mir zu Hause.

    Ich brauchte also das access.log vom Server und dann den GoAccess-Dienst.

    Dienst zum Abholen des Logs

    #!/bin/bash
    scp ssh root@DOMAIN:/var/log/nginx/access.log /root
    

    Nicht vergessen

    chmod +x fetch.sh
    

    Crontab

    # m h  dom mon dow   command
    * * * * *  /root/fetch.sh
    

    Zum Testen mal jede Minute. Somit habe ich das Log jede Minute aktualisiert auf dem Server liegen.

    GoAccess systemd

    Für den Start von GoAccess lege ich einen SystemD Dienst an.

    /etc/systemd/system/goaccess.service

    [Unit]
    Description=Goaccess Start
    After=network.target
    
    [Service]
    Type=oneshot
    ExecStart=/root/goaccess
    RemainAfterExit=true
    StandardOutput=journal
    
    [Install]
    WantedBy=multi-user.target
    

    Dienst aktivieren

    systemctl enable goaccess.service
    

    GoAccess Script

    Es fehlt noch das Script in /root/goaccess

    #!/bin/bash
    goaccess /root/access.log -o /var/www/html/report.html --config-file=/etc/goaccess/goaccess.conf --log-format=COMBINED --ignore-crawlers  --restore --persist --db-path "/var/lib/goaccess-db" --real-time-html --daemonize
    

    Auch die Datei braucht ein X

    chmod +x goaccess
    

    Danach die Kiste durchstarten.

    root@:~# pstree
        systemd─┬─agetty
                ├─cron
                ├─dbus-daemon
                ├─dhclient───3*[{dhclient}]
                ├─goaccess───2*[{goaccess}]
                ├─nginx───4*[nginx]
                ├─rsyslogd───3*[{rsyslogd}]
                ├─sshd───sshd───sshd───bash───su───bash───pstree
                ├─systemd───(sd-pam)
                ├─systemd-journal
                ├─systemd-logind
                ├─systemd-timesyn───{systemd-timesyn}
                └─systemd-udevd
    

    Ok läuft.

    bc8e6e71-0428-4dcc-9b8f-eb13e1ebf6c8-grafik.png

    Jetzt schau ich mal, ob mir das gefällt und wenn ja, dann bleibt es 🙂

  • FrankMF FrankM verschob dieses Thema von Privat am
  • 0 Stimmen
    1 Beiträge
    21 Aufrufe
    Niemand hat geantwortet
  • Restic v0.17.3 released

    Linux restic linux
    1
    0 Stimmen
    1 Beiträge
    174 Aufrufe
    Niemand hat geantwortet
  • Flatpak - Signal

    Linux flatpak signal linux
    1
    0 Stimmen
    1 Beiträge
    146 Aufrufe
    Niemand hat geantwortet
  • HSTS - Sicherheitsmechanismus für HTTPS-Verbindungen

    Linux hsts linux https
    1
    0 Stimmen
    1 Beiträge
    109 Aufrufe
    Niemand hat geantwortet
  • Wichtige Links

    Angeheftet Ansible ansible linux
    1
    0 Stimmen
    1 Beiträge
    154 Aufrufe
    Niemand hat geantwortet
  • Nextcloud Talk

    Nextcloud nextcloud coturn linux talk
    5
    2
    0 Stimmen
    5 Beiträge
    974 Aufrufe
    FrankMF
    All I needed to do was setting the permissions to 744 for the archive directory and the symlinks resolved correctly after a reboot of coturn My turnserver installation on Debian runs as the user turnserver and not as root, nor is the user turnserver in any group owning the letsencrypt directory. If your turnserver does run as root, it should be fine just adding execute permissions. I hope this helps some of you. Quelle: https://help.nextcloud.com/t/lets-encrypt-symlink-breaks-coturn-configuration/70166 Was zum Testen die Tage....
  • Wireguard

    Verschoben Wireguard linux rockpro64 wireguard
    4
    0 Stimmen
    4 Beiträge
    968 Aufrufe
    FrankMF
    Etwas schnellerer Weg den Tunnel aufzubauen, Voraussetzung wireguard modul installiert Keys erzeugt Danach dann einfach ip link add wg0 type wireguard wg setconf wg0 /etc/wireguard/wg0.conf Datei /etc/wireguard/wg0.conf [Interface] PrivateKey = <Private Key> ListenPort = 60563 [Peer] PublicKey = <Public Key Ziel> Endpoint = <IPv4 Adresse Zielrechner>:58380 AllowedIPs = 10.10.0.1/32 Die Rechte der Dateien von wireguard müssen eingeschränkt werden. sudo chmod 0600 /etc/wireguard/wg0.conf Das ganze per rc.local beim Booten laden. Datei /root/wireguard_start.sh ############################################################################################### # Autor: Frank Mankel # Startup-Script # Wireguard # Kontakt: frank.mankel@gmail.com # ############################################################################################### ip link add wg0 type wireguard ip address add dev wg0 10.10.0.1/8 wg setconf wg0 /etc/wireguard/wg0.conf ip link set up dev wg0 Danach Datei ausführbar machen chmod +x /root/wireguard_start.sh In rc.local /root/wireguard_start.sh eintragen - Fertig!
  • Restic - Rootserver als Datenablage nutzen

    Restic linux restic
    2
    0 Stimmen
    2 Beiträge
    807 Aufrufe
    FrankMF
    Ok, das erste Backup dauert immer was länger In meinem Fall 5 Std. 16 Minuten. Files: 33408 new, 0 changed, 0 unmodified Dirs: 1 new, 0 changed, 0 unmodified Data Blobs: 20849 new Tree Blobs: 2 new Added to the repo: 6.278 GiB processed 33408 files, 8.604 GiB in 5:16:03 snapshot 5beg1cb3 saved Aber, das Schöne ist, das die Backups inkrementell angelegt werden. Das nächste geht schneller open repository repository 3gg202a2 opened successfully, password is correct lock repository load index files using parent snapshot 5beg1cb3 start scan on [/home/frank] start backup on [/home/frank] scan finished in 3.791s: 33788 files, 8.611 GiB Files: 496 new, 74 changed, 33218 unmodified Dirs: 0 new, 1 changed, 0 unmodified Data Blobs: 292 new Tree Blobs: 2 new Added to the repo: 43.661 MiB processed 33788 files, 8.611 GiB in 2:15 snapshot fag41bf7 saved Eine tägliche Sicherung sollte dann wohl reichen.