2015-03-31 105 views
2

我正在使用logstash将邮件发送到graylog服务器。我已经成功地将消息直接发送到elasticsearch或stdout或loggly。我也成功地使用cURL向graylog服务器发送消息。无法使用logstash将邮件发送到graylog服务器

curl -XPOST http://graylog.example.org:12202/gelf -p0 -d '{"short_message":"Hello there", "host":"example.org", "facility":"test", "_foo":"bar"}' 

这里是我用来发送使用logstash到graylog

bin/logstash -e 'input { stdin {} } output { gelf {host => "graylog.example.org" port => 12202 } }' < LOG-10 

文件LOG-10具有日志消息数据的命令。我也试过端口12201。我查看了来自logstash的调试消息,但那也没有用。

+0

测试从logstash机器到该端口上的graylog机器(telnet或nc)的连通性。检查graylog日志。 – 2015-03-31 20:04:50

+0

我在同一台机器上运行curl和logstash并使用相同的端口。我没有看到对应于logstash的graylog日志中的任何内容。我正在调查端口流量,你碰巧知道任何好的工具(netstat,tcpdump)?谢谢! – user868643 2015-03-31 21:18:15

回答

2

原来,logstash gelf.rb没有使用TCP,而是使用UDP。 https://github.com/Graylog2/gelf-rb/pull/21

我不得不添加“GELF UDP”作为其中一个graylog消息输入(负责接受日志消息)。这可以从graylog网页界面系统输入访问。 enter image description here

相关问题