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

Protokolldaten mit log4j in Syslog schreiben

Fügen Sie die folgenden Zeilen zur Datei rsyslog.conf

hinzu
$ModLoad imudp
$UDPServerRun 514

Es hat für mich funktioniert.

Nach Änderungen muss rsyslog neu gestartet werden.


Die Antwort von @Sandeep oben ist die richtige, aber sie stammt aus dem Jahr 2012, daher wollte ich sie für Leute, die neuere Setups verwenden, ein wenig erweitern. Zum Beispiel auf Ubuntu 18.04 der /etc/rsyslog.conf Datei hat jetzt Daten am Anfang der Datei, die wie folgt aussehen:

#################
#### MODULES ####
#################

module(load="imuxsock") # provides support for local system logging
#module(load="immark")  # provides --MARK-- message capability

# provides UDP syslog reception
#module(load="imudp")
#input(type="imudp" port="514")

# provides TCP syslog reception
#module(load="imtcp")
#input(type="imtcp" port="514")

Kommentieren Sie die beiden UDP-Zeilen aus und führen Sie dann sudo service rsyslog restart aus hat für mich funktioniert. Der Java Log4J Syslog-Appender (https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/net/SyslogAppender.html) erwartet syslog auf UDP-Port 514 auf localhost zu lauschen.

Als potenzielle weitere Sicherheitsverbesserung können Sie auch eine Bindung an die Loopback-Adresse in Betracht ziehen, damit Port 514 außerhalb des Hosts nicht sichtbar ist, wenn Sie dies nicht benötigen:

input(type="imudp" port="514" address="127.0.0.1")

Es ist auch möglich, dieses Update durchzuführen, ohne den bestehenden /etc/rsyslog.conf berühren zu müssen Datei; stattdessen können Sie eine neue conf-Datei unter /etc/rsyslog.d/ hinzufügen Verzeichnis, z. /etc/rsyslog.d/10-open-upd-port.conf , die nur diese Zeilen enthält:

module(load="imudp")
input(type="imudp" port="514" address="127.0.0.1")

Und starten Sie dann rsyslog neu Daemon wie oben beschrieben.

Um zu sehen, ob der rsyslog Daemon aktiv auf dem UDP-Port 514 lauscht, fand ich diesen Befehl auch nützlich:sudo lsof -iUDP:514 -nP -c rsyslogd -a (Zeige Listener auf Port UDP 514, dessen Befehl "rsyslogd" ist).


Linux
  1. So verwalten Sie Protokolldateien mit Logrotate unter Linux

  2. So schreiben Sie Protokolldateien im RAM mit Log2ram unter Linux

  3. Unterschied zwischen /var/log/messages, /var/log/syslog und /var/log/kern.log?

  4. CentOS / RHEL :So rotieren Sie /var/log/wtmp- und /var/log/btmp-Dateien mit logrotate

  5. Protokollüberwachung mit tail oder weniger

Verwenden von systemd-Journalen zur Behebung vorübergehender Probleme

So überwachen Sie den Fortschritt von Daten (Kopieren/Sichern/Komprimieren) mit dem Befehl „pv“.

Ablenkungsfreies Schreiben unter Linux mit FocusWriter

So fügen Sie Daten in eine MySQL-Datenbank mit PHP in XAMPP ein

So sichern und wiederherstellen Sie Daten mit Restic unter Linux

Warum innodb_file_per_table verwenden?