2年前にrsyslogリスナーのために書いたルールがありましたが、今日それがうまくいかないことがわかりました。 RainerScriptベースのデフォルトフィルタですが、機能しません。誰かが次を見て、私が何を間違っているのか教えてもらえますか?よろしくお願いします。
call ruleset_em7
# Send to EM7
ruleset(name="ruleset_em7"){
if ($msg contains "%ASA-4-313009" or $msg contains "%ASA-4-733100" or $msg contains "%ASA-3-202010") then {
action(type="omfwd" name="omfwd_em7" target="x.x.x.x" protocol="udp" port="514")
}
}
答え1
上記の元の質問のコードには2つの中括弧セットがあります。 1つはif / thenステートメント全体を囲み、もう1つは作業部分を囲みます。残念ながら、組み込まれた文法チェッカーはこれが悪い考えであることに気付かないようで、2番目のセットについて文句を言いません。削除されると、rsyslogはジョブの説明で識別されたホストに転送を開始します。