Rsyslog:如何在 if-then 语句中取反 'contains'

Rsyslog: how to negate 'contains' in if-then statement

if $programname == "service" then {
     if $msg !contains "test" then
         action(type="omfwd" 
            target="10.0.0.5"
            ...
            ) 
}

我正在尝试 排除包含字词 'test' 的消息。不确定如何否定 'contains'.

document 来看,它似乎是 '!contains'。尝试过但没有运气。

有什么想法吗?

用于否定的语法 ! 适用于形式为

的遗留选择器
:msg, !contains, "test"  /some/file

您正在使用 RainerScript,因此适当的语法是关键字 not:

if not ($msg contains "test") then