我想创建一个中央 rsyslog 服务器,并且我想为收到的每种日志类型创建一个文件。我需要一个过滤器,它可以在传入的消息中查找特定字符串,然后将它们放在单独的日志文件中。
因此,如果我看到来自 Cisco 设备的日志,我会将其放在 /var/log/remote_cisco.log 中,如果我看到来自另一个 Linux 机器的日志,我会将日志放在 /var/log/remote_linux.log 中。
因此,我创建了一个具有新规则集的新配置,但是我很难理解将过滤器放在哪里,我想说的是:
如果 $msg 包含“CISCO ASA”,则 /var/log/remote_cisco.log
这是我当前的基本配置文件
# Syslog Config to enable a Syslog Server
ruleset(name="remote"){
action(type="omfile" file="/var/log/remote.log") }
# provides UDP syslog reception module(load="imudp") input(type="imudp" port="514" ruleset="remote")
# provides TCP syslog reception module(load="imtcp") input(type="imtcp" port="514" ruleset="remote")