![rsyslog conf-Dateisyntax mehrere Filter](https://rvso.com/image/762152/rsyslog%20conf-Dateisyntax%20mehrere%20Filter.png)
Ich richte rsyslog auf einem Red Hat 8-System ein. Der erste Teil funktioniert bei mir. Er filtert basierend auf der Quell-IP und schreibt Protokolle in eine bestimmte Datei, wie diese:
if $fromhost-ip startswith '10.1.2.45' then /var/log/test_all.log
& ~
Was ich tun möchte, wofür ich aber nicht die richtige Syntax herausfinden kann, ist zu prüfen, obHost-IPund dasAuthprivEinrichtung und schreiben Sie es in eine Datei.
Ich weiß, dass ich diese Anweisung vor der oben aufgeführten brauche, aber ich bekomme sie nicht zum Laufen. Ich habe auch die local7
(Boot-Protokolle) ausprobiert und das hat auch nicht funktioniert. Die nächsten beiden Beispiele sind Syntaxen, die ich ausprobiert habe und die nicht funktioniert haben:
Beispiel 1:
if $fromhost-ip startswith '10.1.2.45' and $syslogfacility-text == 'local7' then /var/log/test_boot.log
& stop
if $fromhost-ip startswith '10.1.2.45' and $syslogfacility-text == 'local10' then /var/log/test_secure.log
& stop
if $fromhost-ip startswith '10.1.2.45' then /var/log/test_all.log
& stop
Beispiel 2:
if $fromhost-ip startswith '10.1.2.45' and $syslogfacility-text == 'authpriv.*' then /var/log/test_secure.log
& stop
if $fromhost-ip startswith '10.1.2.45' then /var/log/test_all.log
& stop
Antwort1
Lösung hier gefunden: rsyslog-Konfigurationssyntax
if $fromhost-ip startswith '10.1.2.45' then {
authpriv.* -/var/log/test_secure.log
-/var/log/test_all.log
& stop
}