rsyslogd と 3 つのクライアントを使用して syslogserver をセットアップしました。3
つのテスト クライアントからのログがサーバーに送信され、これまでのところ順調です。
問題は、
FQDN ホスト名が機能しないことです。rsyslog.com
によると、/etc/rsyslog.conf に「$PreserveFQDN on」を追加する必要があるとのことです。
サーバーと 3 つのクライアントでこれを変更し、rsyslogd を再起動しましたが、短いホスト名はそのままです。しかし、1 つのクライアントで rsyslogd サービスを再起動すると、その FQDN でサーバーにログ ファイルが作成されます...
hostname --long は client.example.org という適切な結果を返します。hostname
--short は client という適切な結果を返します。
何かアイデアはありますか?
よろしくお願いします!
答え1
引き続き探し続ける場合に備えて、ここに答えがあります。
rsyslog サーバーで、たとえばリモート ログ用にこのテンプレートを定義している場合は、次%FROMHOST%
の代わりに変数を使用する必要があります%HOSTNAME%
。
$template RemoteLogs, "/media/largeHDD/logs/%FROMHOST%/%PROGRAMNAME%.log" *
*.* ?RemoteLogs
& ~