動的ファイル名は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

関連情報