rsyslog - 基于堆栈属性的过滤器(或Rainer解决方案)

时间:2014-05-04 05:33:57

标签: rsyslog

我需要在rsyslog中使用以下过滤器。我的语法不正确,它在rsyslog日志文件中生成错误:

:programname, isequal, "program1" &
:msg, contains, "an expression" /dev/null
&~

错误是:

the last error occured in /etc/rsyslog.d/50-default.conf, line 18:":programname, isequal, "program1" &"

如果有人可以为此属性过滤器建议正确的语法,或者使用正确的RainerScript语法来执行相同的操作,我会很感激吗?

1 个答案:

答案 0 :(得分:1)

在Rainer Gerhards的帮助下得到了答案:

if $programname == 'program1' and $msg contains 'an expression' then /dev/null
& stop

请注意,对于旧版本的rsyslog(如Ubuntu随其V13' Saucy'提供的V5),您必须在属性周围使用单引号。双引号在后期模式rsyslog版本中工作,如rsyslog V7