我正在寻找build立一个系统日志中继为了从我的客户端强制UDPstream到TCP。 具体来说,我想从中移除
client --UDP_PORT_999--> server1
至
client --UDP_PORT_999--> server1 --TCP_PORT_514--> server2
我在rssylog文档中发现如何设置远程(客户端和服务器)系统日志以及如何正确configuration故障转移 (如果server2不可用),但我不知道如何翻译“ 转发到server2只有消息来自远程客户端 “(或者,” 转发到服务器2只有来自UDP 999端口的消息 “)。 换句话说,我想保持server1上的本地系统日志处理,并简单地通过UDP代理通过UDP传出的消息。
我不虔诚地附加到rsyslog,所以如果有一个好的方法来设置(包括故障转移)在syslog-ng它将是完美的。
谢谢你的指点!
WoJ
PS。 我在rsyslog论坛上发布了这个问题,之后才意识到我可能会更好地发布我的问题:)
编辑: nxlog将是一个更好的解决scheme(见下面的答案和我的意见)
我也可以推荐你nxlog,因为它的configuration允许你更自然地定义你上面指定的stream程。
configuration骨架:
<Input udpin> Module im_udp ... </Input> <Output tcpout> Module om_tcp ... </Output> <Route forwarder> Path udpin => tcpout </Route>
我find了一个合理的方法来实现这一点,将以下configuration行添加到server1上的/etc/rsyslog.conf中:
:fromhost-ip, !isequal, "127.0.0.1" @@server2
( $fromhost-ip文档指出$fromhost-ip = 127.0.01为本地消息)
configuration工程,与优秀的远程系统日志testing。