rsyslog フィルタの重大度が機能しません。

rsyslog フィルタの重大度が機能しません。

リモートサーバーにログを送信するには、次のRsyslog設定があります。問題は、リモートサーバーに多くの情報メッセージを送信するためにそのノイズを望まないことです。すべての重大度ログは送信しますが、情報は送信しないようにフィルタを設定しようとしています。

# Ansible managed

$WorkDirectory /var/spool/rsyslog
$template RFC3164fmt,"<%PRI%>%TIMESTAMP% %HOSTNAME% %syslogtag%%msg%"

# Log shipment rsyslog target servers
$ActionQueueFileName ostack-log-01_rsyslog_container-04cb9e3a
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount 250
local7.* @172.28.1.205:514;RFC3164fmt

これが私が成功しなかったことです。

local7.*;local7.!=info @172.28.1.205:514;RFC3164fmt

私のオペレーティングシステムはCentos7.5 Linuxです。

ベストアンサー1

これがここで起こるものです。私のsyslogメッセージにはINFOログが表示されていますが、tcpdumpではsyslogの重大度が表示されることがわかりました。noticeこれがまさに混乱です。

local7.*;local7.!=notice;local7.!=info @172.28.1.205:514;RFC3164fmt

logger偽のログを生成するツールを使用してこのルールをテストする方法は次のとおりです。

logger -p 'local7.info' 'This is info logs, Reject it'
logger -p 'local7.notice' 'This is notice logs, Reject it'
logger -p 'local7.error' 'This is error logs and Accept it'

おすすめ記事