rsyslogd 不存储远程日志信息

rsyslogd 不存储远程日志信息

我在 Ubuntu 14.0.1 上有一个 rsyslogd:

$ModLoad imtcp
$InputTCPServerRun 514
$template FILENAME,"/var/log/%fromhost%/syslog.log"
*.* ?FILENAME

如果运行

logger -p local0.crit -n 10.240.157.116 -u /dev/null test

在远程机器上,我可以使用 tcpdump 查看 rsyslogd-server 上的 syslog 数据包:

15:43:43.586827 IP 10.240.180.245.37261 > 10.240.157.116.514: SYSLOG local0.critical, length: 33

但是,远程主机的 rsyslogd-server 上没有写入任何日志。本地日志按预期写入 /var/log/rsyslogd-server-hostname/bla

答案1

根据记录器的手册页,“-n”将发送一个 UDP 数据包,这就是您在 tcpdump 中看到的(只有一个数据包,而不是 TCP 握手等)。

您的 rsyslogd 配置仅期望在 TCP (InputTCPServerRun) 上输入。

你可能想要:

$ModLoad imudp 
$UDPServerRun 514

相关内容