fix(logs): inputs.journal existiert in offiziellen Builds nicht — tail auf /var/log/syslog, value->message

This commit is contained in:
mm committed 2026-09-13 22:18:55 +02:00
1 parent e1da311488
commit 49b5811d94
1 file changed
+26 -24
+26 -24
View File
@@ -1,31 +1,33 @@
# System-Logs (journald) → Loki # System-Logs (Syslog) → Loki
# #
# Warum: inputs.docker_log deckt nur Container ab. PVE-Knoten und alle # Warum: inputs.docker_log deckt nur Container ab. PVE-Knoten und alle
# Nicht-Docker-Hosts lieferten damit gar keine Logs — genau dort stehen aber # Nicht-Docker-Hosts lieferten damit gar keine Logs — genau dort stehen aber
# die relevanten Meldungen (pvedaemon, pveproxy, qemu, Kernel, Storage). # die relevanten Meldungen (pvedaemon, pveproxy, qemu, Kernel, Storage).
# #
# Wichtig: # Umsetzung: inputs.tail auf die Syslog-Dateien.
# - Läuft nur auf systemd-Systemen (kein Alpine/OpenRC). # HINWEIS: inputs.journal existiert in den offiziellen Telegraf-Builds NICHT
# - Journal-Zugriff: Dienst läuft als root (Proxmox-Drop-in) bzw. braucht # (Docker-Image und InfluxData-Debian-Paket 1.40 wurden beide geprüft) — das
# Mitgliedschaft in "systemd-journal". Der Installer setzt das per # Plugin braucht einen Build mit systemd-Headern. Deshalb der Datei-Weg.
# SupplementaryGroups, wenn als Benutzer "telegraf" gelaufen wird. #
# - PVE/Cluster-Meldungen sind im Journal unter diesen Units zu finden: # Voraussetzung: rsyslog schreibt eine Datei. Auf PVE ist das /var/log/syslog
# pvedaemon, pveproxy, pvestatd, pve-firewall, qmeventd, corosync, pmxcfs # (pve-manager hängt an rsyslog). Prüfen mit: ls -la /var/log/syslog
[[inputs.journal]] [[inputs.tail]]
# Nur Warnungen und schlimmer — sonst flutet das Journal Loki. # Fehlende Dateien sind unkritisch (Debian hat kein /var/log/messages).
# Für Debugging temporär auf "info" oder "debug" setzen. files = ["/var/log/syslog", "/var/log/messages", "/var/log/kern.log", "/var/log/daemon.log"]
units = [ name_override = "journal"
"pvedaemon", "pveproxy", "pvestatd", "pve-firewall", # Default "saved-or-end": beim ersten Start nichts nachholen, danach merken.
"qmeventd", "corosync", "pmxcfs", "pve-cluster", initial_read_offset = "saved-or-end"
"sshd", "systemd", "kernel", "smartd", "zfs-zed", "zfs", # Zeilen als Text durchreichen (kein Parsing nötig)
"netbird", "telegraf", "docker", "containerd", "cron", data_format = "value"
] data_type = "string"
# Einheiten ohne Einträge liefern einfach nichts — kein Fehler. # Pfad als Tag, damit man in Loki nach Datei filtern kann
priority = "warning" # warning, err, crit … path_tag = "logfile"
# Kein Nachholen alter Einträge beim Start
since = "-1h" # Feldname vereinheitlichen: tail/value liefert "value", das Logs-Panel
# Felder, die als Log-Zeile nutzbar sind (sonst nur Structured-Log) # erwartet (wie docker_log) "message". Umbenennen statt Panel-Sonderfall.
fieldpass = ["MESSAGE", "PRIORITY", "SYSLOG_IDENTIFIER", "UNIT", "_HOSTNAME"] [[processors.rename]]
# Kein doppeltes Logging: docker_log deckt Container ab
namepass = ["journal"] namepass = ["journal"]
[[processors.rename.replace]]
field = "value"
dest = "message"