使用 rsyslogd 进行本地和远程日志记录

使用 rsyslogd 进行本地和远程日志记录

我怎样才能使用 rsyslog 使日志文件既存储在远程又存储在本地?

答案1

它看起来就像配置文件中的两行一样简单:

*.* @loghost
*.* /var/log/messages

rsyslog 示例配置有几个像这样的发球例子。关键的一点是:

kern.* /var/adm/kernel
kern.crit @finlandia;RFC3164fmt
kern.crit /dev/console
kern.info;kern.!err /var/adm/kernel-info

The second statement directs all kernel messages of the priority crit and 
higher to the remote host finlandia.
[...]
The third rule directs these messages to the actual console, so the person 
who works on the machine will get them, too.

答案2

Wouter de Bie 给出了一个很好的答案,但他展示了发送日志的 UDP 方法。为了通过更可靠(但不是 100%)的 TCP 发送日志,请使用以下方法:

\*.* @@remote.server.ip

答案3

将以下行放入您的 /etc/rsyslog.d/remote.conf 中:

*.* @remote.server.ip

这可以轻松扩展,仅将特定设施和级别记录到远程服务器。

相关内容