web-dev-qa-db-ja.com

rsyslogを使用して、ホストごとに個別のsyslogファイルを作成します

ネットワークデバイスからのすべてのSyslogを統合するSyslogサーバー(RHEL 7.4でrsyslogを実行)があります。 TCP/514ポートでリッスンしています。

各デバイスのログを、/var/log/messagesにすべて取得するのではなく、専用のディレクトリ(IPアドレスに基づく)の異なるファイルにリダイレクトしたい。どうやってやるの?

2
eden881

それはここのrsyslog Webサイトに文書化されているようです: https://www.rsyslog.com/storing-and-forwarding-remote-messages

要約する :

たとえば、次のようなログファイルのテンプレートを定義する必要があります。

# log every Host in its own directory
$template RemoteHost,"/var/syslog/hosts/%HOSTNAME%/%$YEAR%/%$MONTH%/%$DAY%/syslog.log"

次に、このテンプレートをリモートホストからのメッセージに適用します。

# Remote Logging
$RuleSet remote
*.* ?RemoteHost
5
krisFR