2013-05-01 83 views
3

我有一些我想用logstash整理的日志。它将作为源服务器上的托运人登录到中央日志记录服务器的logstash代理。我想从发货人使用UDP到中央日志,所以如果记录器失败(我不希望70奇怪的生产服务器受到任何影响),我可以完全隔离。我可以看到使用udp传输的唯一方法是使用syslog格式输出。有谁知道我可以从logstash本地输出UDP的方式吗? (文档暗示,但我必须丢失TCP端的东西?)从Logstash输出UDP

回答

0

可以输出UDP本地使用UDP输出插件

通过设置编解码器字段,你可以选择你喜欢的任何输出格式(例如JSON)

+0

这可能看起来很明显,但是确保你在托运人和服务器端都设置了相同的编解码器 - 在我想出来之前,花了一段时间才弄清楚事件没有发生。 – 2014-08-29 00:41:23

1

我的理解是,典型的方法是使用一些更轻量级(rsyslog,甚至Lumberjack)运行在远程机器上,即将数据发送到您的中央logstash服务器。

听起来你希望logstash代理(转发器)在每台服务器上运行并将数据发送给代理。这个博客post(以下面的链接为例)给出了一个很好的解释,说明他们为什么选择不在远程服务器上使用logstash转发器 - 它们吃的太多了RAM

我使用rsyslog发送UDP数据到logstash直。我还使用了rsyslog作为接收日志服务器的设置,并将日志聚合到单独的日志文件(基于服务器主机名),然后从这些文件中读取logstash。

对于一些示例CONFIGS看到以下内容:

我建议rsyslog现在的做法,因为这rsyslog现在是已经在你的服务器上运行的机率比伐木工人高。另外rsyslog上的文档比伐木人还多。如果你觉得有必要,从简单开始,稍后增加更多复杂性。