在 logstash 上监听多个 UDP 端口
Listening on multiple UDP ports on logstash
我有一个简单的 ELK 设置 运行 在一台机器上,使用 Logstash 读取自定义格式的日志消息并使用 Elasticsearch/Kibana.
分析数据
基于对 this Whosebug post 的回复之一中的配置文件,我在我的 conf 文件中添加了多个 udp 输入条目,其中一部分显示如下:
input {
udp {
type => "log_type_1"
port => 9999
}
udp {
type => "log_type_2"
port => 9998
}
udp {
type => "log_type_3"
port => 9997
}
}
当我重新启动 logstash 服务并检查 /var/log/logstash/logstash
下的日志时,我看到错误消息:
{:timestamp=>"2015-02-17T18:15:56.032000-0800", :message=>"UDP listener died", :exception=>#<SocketError: bind: name or service not known>, :backtrace=>["org/jruby/ext/socket/RubyUDPSocket.java:160:in `bind'", "/opt/logstash/lib/logstash/inputs/udp.rb:69:in `udp_listener'", "/opt/logstash/lib/logstash/inputs/udp.rb:50:in `run'", "/opt/logstash/lib/logstash/pipeline.rb:163:in `inputworker'", "/opt/logstash/lib/logstash/pipeline.rb:157:in `start_input'"], :level=>:warn}
关于我在这里做错了什么有什么想法吗?我使用 --configtest
标志尝试 运行ning logstash,我没有发现我的配置有任何问题。我猜它只检查语法正确性。
谢谢!
原来 实际上支持多个 UDP 端口(没有理由不支持)。一个简单的
netstat -alp | grep <port_number>
向我展示了我们当前正在使用的端口,我设法通过更改端口号解决了这个问题。
谢谢!
我有一个简单的 ELK 设置 运行 在一台机器上,使用 Logstash 读取自定义格式的日志消息并使用 Elasticsearch/Kibana.
分析数据基于对 this Whosebug post 的回复之一中的配置文件,我在我的 conf 文件中添加了多个 udp 输入条目,其中一部分显示如下:
input {
udp {
type => "log_type_1"
port => 9999
}
udp {
type => "log_type_2"
port => 9998
}
udp {
type => "log_type_3"
port => 9997
}
}
当我重新启动 logstash 服务并检查 /var/log/logstash/logstash
下的日志时,我看到错误消息:
{:timestamp=>"2015-02-17T18:15:56.032000-0800", :message=>"UDP listener died", :exception=>#<SocketError: bind: name or service not known>, :backtrace=>["org/jruby/ext/socket/RubyUDPSocket.java:160:in `bind'", "/opt/logstash/lib/logstash/inputs/udp.rb:69:in `udp_listener'", "/opt/logstash/lib/logstash/inputs/udp.rb:50:in `run'", "/opt/logstash/lib/logstash/pipeline.rb:163:in `inputworker'", "/opt/logstash/lib/logstash/pipeline.rb:157:in `start_input'"], :level=>:warn}
关于我在这里做错了什么有什么想法吗?我使用 --configtest
标志尝试 运行ning logstash,我没有发现我的配置有任何问题。我猜它只检查语法正确性。
谢谢!
原来 实际上支持多个 UDP 端口(没有理由不支持)。一个简单的
netstat -alp | grep <port_number>
向我展示了我们当前正在使用的端口,我设法通过更改端口号解决了这个问题。
谢谢!