Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:journald

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Letzte Überarbeitung Beide Seiten, nächste Überarbeitung
admin_grundlagen:journald [2017/02/15 16:57]
stefan_miethke [Files]
admin_grundlagen:journald [2023/11/10 12:32]
ingo_wichmann [Persistentes Journal]
Zeile 1: Zeile 1:
- 
 ====== systemd: journal ====== ====== systemd: journal ======
 Die "​Logfiles"​ im systemd sind eine binäre Datenbank mit umfassenden Suchwerkzeugen Die "​Logfiles"​ im systemd sind eine binäre Datenbank mit umfassenden Suchwerkzeugen
Zeile 18: Zeile 17:
   * ''/​run/​systemd/​journal/<​machine-id>''​ <- dynamisch   * ''/​run/​systemd/​journal/<​machine-id>''​ <- dynamisch
  
-Die ''​machine-id'' ​steht in ''/​etc/​machine-id''​ und wird automatisch generiert oder mit ''​systemd-machine-id-setup''​. ((Bei geklonten Maschinen hilft ein ''​dbus-uuidgen > /​etc/​machineid''​)).+Die "machine-id" ​steht in ''/​etc/​machine-id''​ und wird automatisch generiert oder mit ''​systemd-machine-id-setup''​. ​''/​var/​lib/​dbus/​machine-id''​ beachten. Man kann eine Generierung erzwingen, indem man die Datei trunkiert 
 + 
 +  > /​etc/​machine-id 
 +  readlink /​var/​lib/​dbus/​machine-id || rm /​var/​lib/​dbus/​machine-id 
 +   
 +((man könnte auch eine id selbst erzeugen mit ''​dbus-uuidgen > /​etc/​machineid''​)). 
 +(( Debian Wiki zu dem Thema: 
 +https://​wiki.debian.org/​MachineId#​line-35 
 +))
  
 Das Verzeichnis ''/​var/​log/​journal''​ muss vorhanden sein; systemd loggt andernfalls nur temporär. Das Verzeichnis ''/​var/​log/​journal''​ muss vorhanden sein; systemd loggt andernfalls nur temporär.
Zeile 38: Zeile 45:
  
 in einem bestimmten Zeitraum in einem bestimmten Zeitraum
-  journalctl --since ​"2016-01-10" ​--until ​"2016-01-11 03:00"+  journalctl --since ​'2016-01-10' ​--until ​'2016-01-11 03:00'
   ​   ​
 ab einem bestimmten Level ab einem bestimmten Level
Zeile 52: Zeile 59:
  
 === Ins Journal schreiben === === Ins Journal schreiben ===
 +genauer: stdout und stderr mit dem journal verbinden
   ls | systemd-cat   ls | systemd-cat
 +  systemd-cat hostnamectl
 ==== Größe beschränken ==== ==== Größe beschränken ====
-<file txt /​etc/​systemd/​journald.conf>​+Defaults für ''​persistent'':​ 10% filesystem. Max 4 GiB 
 + 
 +<file txt /​etc/​systemd/​journald.conf.d/​lukas.conf>
 SystemMaxUse=100M SystemMaxUse=100M
 SystemKeepFree=1G SystemKeepFree=1G
 </​file>​ </​file>​
 +
 +==== Größe manuell verkleinern ====
 +Aktuelle Größe anzeigen:
 +  journalctl --disk-usage
 +sollte etwa das selbe sein wie:
 +  du -sh /​var/​log/​journal/​
 +
 +So lange alte Logs löschen, bis 100M erreicht sind:
 +  sudo journalctl --vacuum-size=100M
 +
 +oder: alle Logs löschen, die älter als 2 Tage sind:
 +  journalctl --vacuum-time=2days
 +
 +==== Persistentes Journal ====
 +  mkdir /​var/​log/​journal
 +  systemctl restart systemd-journald
 +  journalctl --flush
 +==== Boots ====
 +Auflisten, letztes boot
 +  journalctl --list-boots
 +  journalctl -b
 +Ein bestimmtes boot (mit ID oder ordinal)
 +  journalctl -b 76fcd53ed6d54d24b1422e6bb48bab61
 +  journalctl -b -2
 +
 +==== Versiegeln ====
 +So können die sealing keys erstellt werden
 +  journalctl --setup-keys
  
 ===== Doku ===== ===== Doku =====
   * http://​0pointer.de/​blog/​projects/​journalctl.html   * http://​0pointer.de/​blog/​projects/​journalctl.html
  
 +====== Remote Logging ======
 +Benötigte Pakete: systemd-journal-remote
 +===== Push Betrieb =====
 +==== Receiver ====
 +Zunächst plain HTTP. Im ''​systemd-journal-remote.socket''​ steht der ''​ListenStream=19532''​
 +als Standard-Port.
 +
 +  systemctl edit systemd-journal-remote.service
 +
 +HTTPS durch HTTP ersetzen. Eigentlich keine gute Idee ;-)
 +
 +<​file>​
 +[Service]
 +ExecStart=
 +ExecStart=...--listen-http...
 +</​file>​
 +
 +  systemctl enable --now systemd-journal-remote.socket
 +  ss -lnp '( sport = 19532 )'
 +
 +==== Sender ====
 +<file txt /​etc/​systemd/​journal-upload.conf>​
 +[Upload]
 +URL=http://​10.0.0.1:​19532
 +</​file>​
 +
 +  systemctl enable --now systemd-journal-upload.service
admin_grundlagen/journald.txt · Zuletzt geändert: 2023/11/24 08:25 von natureshadow2