我在 Red Hat 8 系统上设置 rsyslog。我有第一部分工作,即基于源 IP 进行过滤,将日志放在特定文件中,如下所示:
如果 $fromhost-ip 以 '10.1.2.45' 开头,那么 /var/log/test_all.log
&~
我想做的,我无法弄清楚正确的语法,是如果从主机 IP 和 authpriv 设施采购,把它放在一个文件中。我知道在上面列出的那个之前我需要那个声明,但我无法让它发挥作用。我还尝试了 local7(启动日志),但也没有用。接下来的两个示例是我尝试过但不起作用的语法:
示例 1:
如果 $fromhost-ip 以 '10.1.2.45' 和 $syslogfacility-text == 'local7' 开头,则 /var/log/test_boot.log
& 停止
如果 $fromhost-ip 以 '10.1.2.45' 和 $syslogfacility-text == 'local10' 开头,则 /var/log/test_secure.log
& 停止
如果 $fromhost-ip 以 '10.1.2.45' 开头,那么 /var/log/test_all.log
& 停止
示例 2:
如果 $fromhost-ip 以 '10.1.2.45' 和 $syslogfacility-text == 'authpriv.*' 开头,则 /var/log/test_secure.log
& 停止
如果 $fromhost-ip 以 '10.1.2.45' 开头,那么 /var/log/test_all.log
& 停止
---示例结束---
任何帮助将不胜感激。
在这里找到的解决方案: rsyslog 配置语法