
Unter Ubuntu 18.04 und rsyslogd 8.32 werden Protokolle mit der folgenden Konfiguration korrekt über TCP ohne RELP gesendet:
Server [192.168.1.201] (/etc/rsyslog.conf):
module(load="imuxsock") # provides support for local system logging
$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514
module(load="imklog" permitnonkernelfacility="on")
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$RepeatedMsgReduction on
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog
$WorkDirectory /var/spool/rsyslog
$IncludeConfig /etc/rsyslog.d/*.conf
:programname, isequal, "example" {
$template RemoteServer, "/var/log/remote/%FROMHOST-IP%/%HOSTNAME%/%SYSLOGFACILITY-TEXT%_%PROGRAMNAME%.log"
*.* ?RemoteServer
stop
}
Client (/etc/rsyslog.d/50-default.conf)
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
kern.* -/var/log/kern.log
mail.* -/var/log/mail.log
mail.err /var/log/mail.err
module(load="imfile" mode="inotify")
input(type="imfile"
File="/home/user/*.log"
Tag="david"
Ruleset="uprule"
addMetadata="on"
Facility="local0")
ruleset(name="uprule"){
:syslogtag, isequal, "example" {
:msg, contains, "HELLO" {
local0.* /var/log/testlog_error.log
local0.* @@192.168.1.201:514
}
stop
}
}
Wenn ich versuche, das RELP-Protokoll zu implementieren, werden die Protokolle nicht an den Server gesendet.
Laden Sie auf dem Client das omrelp
module(load="omrelp")
Und bearbeiten Sie die Zeile local0.* @@192.168.1.201:514
durchlocal0.* :omrelp:192.168.1.201:514
Auf dem Server:
module(load="imrelp")
input(type="imrelp" port="514" ruleset="RemoteLogProcess")
ruleset(name="RemoteLogProcess") {
#Actions with the message...
}
Irgendwelche Vorschläge, damit es funktioniert?
Danke!
Antwort1
Ohne die vollständige Konfigurationsdatei zu sehen, die Sie auf dem Server verwenden, ist mein erster Vorschlag, sicherzustellen, dass Sie imtcp und imrelp nicht auf demselben Port laden. Da beide TCP verwenden, würde das ein Problem verursachen.
Haben Sie die Protokolle überprüft? Erhalten Sie Fehlermeldungen? Sie können dies überprüfen, indem Siejournalctl -r -u rsyslog