抑制 rsyslog tls 错误消息

抑制 rsyslog tls 错误消息

当使用 tls 配置 rsyslog 并使用PermittedPeerstreamdriver.authmode名称时,如果未经授权的对等方连接,rsyslog 会记录如下错误消息。

Jan 22 08:56:38 test rsyslogd-2089: netstream session 0x7f177401b740 from 10.0.0.7 will be closed due to error  [try http://www.rsyslog.com/e/2089 ]
Jan 22 08:56:38 test rsyslogd-2088: error: peer name not authorized -  not permitted to talk to it. Names: DNSname: *.test.com; DNSname: test.com; CN: *.test.com;  [try http://www.rsyslog.com/e/2088 ]

如果客户端是持久的,rsyslog 会记录数千条这样的消息。

有没有办法告诉 netstream 驱动程序不要记录太多这样的信息?我并不介意查看这些信息,以便确定哪个客户端配置错误或可能存在滥用,但这样的信息实在是太多了。

我目前正在使用下面的条目,它们完全丢弃了这些消息。

:msg, contains, "peer name not authorized" ~
:msg, regex, ".*netstream session .* from .* will be closed due to error" ~

顺便说一下,这会生成下面的警告信息,尽管近期文献说这是丢弃消息的正确方法。

Jan 22 09:34:22 test: warning: ~ action is deprecated, consider using the 'stop' statement instead [try http://www.rsyslog.com/e/2307 ]

答案1

看来你想实现重复信息减少

在您的全局配置指令中(可能rsyslog.conf):

$RepeatedMsgReduction on

来自文档:

此指令指定是否应减少重复消息(这是“最后一行重复 n 次”功能)。如果设置为开启,则减少重复消息。如果设置为关闭,则记录每条消息。

相关内容