Rsyslogサーバーから特定の重大度を削除する方法

Rsyslogサーバーから特定の重大度を削除する方法

複数のリモートクライアントからのデータを持つrsyslogサーバーがあります。今warninfoおよびなどの特定の重大度タイプdebugと受け入れる残りのメッセージを削除しようとしています。

以下の構成が部分的に表示され、検査されtemplateましRulesた。

以下の構成では、Custom conditional Forwarding異なる名前で始まる異なるホスト名があるため、すべてをコメントアウトしました。だからあきらめてwarnしばらくinfo休んでいくとdebugどうだろうかと思いました。

$template wcc-logs, "/data/SYSTEMS/%HOSTNAME%/messages.log"
#### RULES ############################################
# Log anything (except mail) of level info or higher.#
# Don't log private authentication messages!        #
####################################################
mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none  ?wcc-logs
*.*              ?wcc-logs
#####################################################################
# Custom conditional Forwarding of messages to the syslog Directory #
###################################################################
#if $fromhost startswith "wc" then {
#  *.crit,*.err,*.emerg,*.alert,*.panic,mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none  ?wcc-logs
#  & stop
#}

#if $fromhost startswith "sj" then      -?wcc-logs
#& stop

#if $fromhost startswith "vlsj-" then   -?wcc-logs
#& stop

上記の構成では、最初の行を除くすべての項目を記録する必要があると仮定し、[ルール]セクションで次のルールを使用したことがわかります。

 mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none  ?wcc-logs
*.*              ?wcc-logs

rsyslogd 8.24.0

ベストアンサー1

warn次の構文を使用すると、レベルのすべてのメッセージと「wcc-logs」テンプレートを使用して、記録したいすべてのエントリをinfo削除できます。debug

*.=warn,*.=info,*.=debug                                                stop
*.*,mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none     ?wcc-logs

rsyslog.conf削除されたメッセージは、ファイル内の次の規則をさらに処理するためには使用されません。

これらのレベルのメッセージを無視し、他のルールによる追加処理に引き続き使用する場合は、単一のルールを拡張してこれらの特定のレベルを無視できます。

*.*,mail.none,authpriv.none,cron.none,news.none,uucp.none,kern.none,*.!=warn,*.!=info,*.!=debug     ?wcc-logs

おすすめ記事