Rsyslog
SIGHUP
rsyslogd(8)里面说它收到SIGHUP信号会重启,可是实际试验,发现我新加的配置并没有生效,比如用upstart重启rsyslog服务才行。用rsyslod -d开启Debug模式,发现SIGHUP的时候有这样的消息:
2757.409895891:main thread: Received SIGHUP, configured to be a non-restart type of HUP - notifying actions.
Google了一下,作者的Blog上有说明。另外,file:///usr/share/doc/rsyslog-doc/html/rsyslog_conf_global.html也有对$HUPisRestart的说明。说明Debian(Ubuntu上游)把这个参数关闭了。
Log目标支持tty,也支持pts。
远程LOG
在远端机器的配置文件里面加入
local0.* @192.168.1.3
重启远端rsyslog,然后用logger测试:
logger -p local0.info
在192.168.1.3上抓包可以看到远端敲入的信息传过来:
# tcpdump -i eth2 "udp port 514"
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth2, link-type EN10MB (Ethernet), capture size 65535 bytes
00:14:58.344328 IP localhost.35791 > dell.syslog: SYSLOG local0.info, length: 40
00:15:00.524450 IP localhost.35791 > dell.syslog: SYSLOG local0.info, length: 44
00:15:02.104408 IP localhost.35791 > dell.syslog: SYSLOG local0.info, length: 36
用nc可以接收到数据:
# nc -u -l 514
<134>Apr 20 00:36:52 Neverland tux: test<134>Apr 20 00:36:53 Neverland tux: hehe<134>Apr 20 00:36:56 Neverland tux: haha