Ga naar inhoud

πŸ“Š Hoofdstuk 5: Logging & Syslog Monitoring

In dit hoofdstuk leer je hoe je systeemlogs kunt bekijken en analyseren.
We behandelen de belangrijkste tools (journalctl, dmesg, tail, en logger), inclusief voorbeeldoutput, uitleg, sterke en zwakke punten, en installatie-/updatecommando’s.


πŸ”Ή journalctl

journalctl is de standaard tool voor logbeheer op systemd-gebaseerde systemen. Hiermee kun je logs filteren, doorzoeken en real-time volgen.

πŸ“₯ Installatie / Update / Verwijderen

# Meestal standaard aanwezig op systemd-systemen
sudo apt install systemd

# Updaten
sudo apt update && sudo apt upgrade systemd

# Verwijderen (niet aanbevolen, systemd is kernonderdeel)
sudo apt remove systemd

# Controleer of geΓ―nstalleerd
which journalctl
journalctl --version

▢️ Gebruik

# Alle logs bekijken
journalctl

# Real-time logs (zoals tail -f)
journalctl -f

# Logs van huidige boot
journalctl -b

# Logs van specifieke service (bijv. ssh)
journalctl -u ssh

πŸ“Š Voorbeeldoutput

-- Logs begin at Fri 2025-08-22 10:00:00 CEST, end at Fri 2025-08-22 13:15:30 CEST --
Aug 22 12:34:56 myhost systemd[1]: Started Session 42 of user root.
Aug 22 12:35:01 myhost CRON[12345]: pam_unix(cron:session): session opened for user root
Aug 22 12:35:01 myhost CRON[12345]: pam_unix(cron:session): session closed for user root

Uitleg

  • -f: volg logs in real-time.
  • -b: toon alleen logs sinds laatste boot.
  • -u : filter logs van een specifieke service.

Sterke punten

  • Zeer krachtig filter- en zoekmechanisme.
  • Real-time logging beschikbaar.
  • Integreert direct met systemd-services.

Zwakke punten

  • Alleen beschikbaar op systemd-systemen.
  • Output kan zeer groot zijn β†’ filteren bijna altijd nodig.

πŸ”Ή dmesg

dmesg toont kernel- en driverberichten. Handig voor hardwareproblemen, kernel-debugging en systeemstarts.

πŸ“₯ Installatie / Update / Verwijderen

# Meestal standaard aanwezig (onderdeel van util-linux of kmod)
sudo apt install kmod

# Updaten
sudo apt update && sudo apt upgrade kmod

# Verwijderen
sudo apt remove kmod

# Controleer versie
dmesg --version

▢️ Gebruik

dmesg
dmesg | less
dmesg -T     # Timestamps in leesbare tijd
dmesg | grep error

πŸ“Š Voorbeeldoutput

[    0.000000] Linux version 5.15.0 (gcc version 11.3.0)
[    0.123456] ACPI: PM-Timer IO Port: 0x408
[    1.234567] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[    2.345678] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)

Uitleg

  • Kernel messages: boot, hardware, driver en kernel-events.
  • -T: menselijke tijdstempel i.p.v. seconden sinds boot.

Sterke punten

  • Onmisbaar voor hardware- en driverdebugging.
  • Lichtgewicht en snel.

Zwakke punten

  • Kan veel technische kerneldata bevatten.
  • Niet persistent (logs verdwijnen bij reboot).

πŸ”Ή tail -f /var/log/syslog

Voor systemen die klassieke syslog gebruiken, is /var/log/syslog of /var/log/messages de centrale logbestandslocatie. Met tail -f volg je logs live.

πŸ“₯ Installatie / Update / Verwijderen

# Syslog via rsyslog (meestal standaard aanwezig)
sudo apt install rsyslog

# Updaten
sudo apt update && sudo apt upgrade rsyslog

# Verwijderen
sudo apt remove rsyslog

# Controleer of actief
systemctl status rsyslog

▢️ Gebruik

# Real-time logs volgen
sudo tail -f /var/log/syslog

# Alleen laatste 100 regels bekijken
sudo tail -n 100 /var/log/syslog

πŸ“Š Voorbeeldoutput

Aug 22 12:40:01 myhost CRON[12567]: (root) CMD (/usr/lib/apt/apt.systemd.daily)
Aug 22 12:40:01 myhost systemd[1]: Starting Daily apt download activities...
Aug 22 12:40:02 myhost systemd[1]: Finished Daily apt download activities.

Uitleg

  • tail -f: blijf nieuwe logregels volgen.
  • /var/log/syslog: algemene log voor systeem- en applicatieberichten.

Sterke punten

  • Simpel en altijd beschikbaar.
  • Real-time inzicht in logs.

Zwakke punten

  • Geen filtermogelijkheden zonder extra tools (grep, awk, etc.).
  • Alleen plaintext-bestanden β†’ geen metadata zoals journalctl.

πŸ”Ή logger

logger schrijft zelf berichten naar syslog/journal β†’ handig voor testen.

πŸ“₯ Installatie / Update / Verwijderen

# Onderdeel van util-linux
sudo apt install bsdutils

# Updaten
sudo apt update && sudo apt upgrade bsdutils

# Verwijderen
sudo apt remove bsdutils

# Controleer of aanwezig
which logger

▢️ Gebruik

logger "Dit is een testbericht"
logger -p local0.info "Custom log entry"

πŸ“Š Voorbeeldoutput in /var/log/syslog

Aug 22 12:45:00 myhost user[13000]: Dit is een testbericht
Aug 22 12:45:05 myhost user[13001]: Custom log entry

Uitleg

  • logger stuurt berichten naar syslog/journal.
  • Handig om logging-workflows te testen.

Sterke punten

  • Eenvoudig voor test- en debugdoeleinden.
  • Integreert met zowel syslog als systemd journal.

Zwakke punten

  • Geen tool voor uitlezen van logs.
  • Alleen nuttig als aanvulling.