5

我有一个写入 unix 流的系统日志服务器/tmp/syslog.socket。我需要将此流复制到多个 TCP 客户端。有没有办法使用 socat 来实现这一点?

4

2 回答 2

3

我想我只是在Some Helpful socat Commands的帮助下完成了这一点,尤其是复制部分。

socat TCP-LISTEN:4444,reuseaddr,fork SYSTEM:"tail -f ~/.tail-error-logs/*",pty

fork左边pty重要,右边重要。

什么不起作用,是 netcat 风格:

tail -f ~/.tail-error-logs/* | socat STDIO TCP-LISTEN:4444,fork,reuseaddr

它具有在多个附加客户端之间交替输出的效果,这也记录在上述网站上

于 2012-07-06T12:42:22.160 回答
1

syslogd 具有通过 udp 重新分发日志的功能,请参见 syslogd 的手册页,即

http://linux.about.com/od/commands/l/blcmdl8_syslogd.htm

我相信 syslog-ng 还支持用于日志重新分发的 tcp 套接字以及 udp

http://www.syslog.org/syslog-ng/v2/

我猜你不需要socat破解?

于 2012-01-26T20:03:36.037 回答