rsyslog で動的ファイル名が機能しません。

rsyslog で動的ファイル名が機能しません。

rsyslog のファイル名は静的または動的です。後者は、特定のメッセージ条件に基づいてメッセージを別のファイルに自動分割する場合に便利です。 IPに基づいてログを分割する必要があります。例: 10.10.10.10.log なぜ動作しないのですか?他のものを使って作成できますか?それはおそらくpython / bashスクリプトですか?

私の設定ファイルは次のとおりです。[rsyslog v5]

#### RULES ####

local6,local5.*                              /var/log/systems/device-all.log

<=15.info;mail.none;authpriv.none;cron.none                /var/log/messages

authpriv.*                                              /var/log/secure

mail.*                                                  -/var/log/maillog

cron.*                                                  /var/log/cron

*.emerg                                                 *

uucp,news.crit                                          /var/log/spooler

local7.*                                                /var/log/boot.log

$template DynamicFile,"/var/log/systems/host-%HOSTNAME%.log"

*.*    -?DynamicFile

local6,local5.*                               /var/log/systems/device-all.log

ベストアンサー1

まず、テンプレートを次のように設定する必要があるようです。

$template DynamicFile,"/var/log/systems/host-%fromhost-ip%.log"

IP別に分離しなければならないからです。次に、ロギングの正しい値は次のとおりです。

*.*    ?DynamicFile

おすすめ記事