Filebeat 到 logstash 连接被拒绝

Sie*_*ena 5 elasticsearch logstash logstash-configuration filebeat

我正在尝试从 filebeat->logstash->elastic search 发送日志文件。文件拍子.yml。但是我在 filebeat 日志中收到以下错误:

2017-12-07T16:15:38+05:30 ERR  Failed to connect: dial tcp [::1]:5044: connectex: No connection could be made because the target machine actively refused it.
Run Code Online (Sandbox Code Playgroud)

我的filebeat和logstash配置如下:

1.filebeat.yml

filebeat.prospectors:

- input_type: log
  paths:
    - C:\Users\shreya\Data\mylog.log 
  document_type: springlog
 multiline.pattern: ^\[[0-9]{4}-[0-9]{2}-[0-9]{2}
  multiline.negate: true
  multiline.match: before
output.logstash:
  hosts: ["localhost:5044"]
Run Code Online (Sandbox Code Playgroud)

2.logstash.yml

    http.host: "127.0.0.1"
    http.port: 5044
Run Code Online (Sandbox Code Playgroud)

3.logstash conf文件:

input {
     beats {
        port => 5044
    codec => multiline {
    pattern => "^(%{TIMESTAMP_ISO8601})"
        negate => true
        what => "previous"
    }
  }
}
filter {
    grok{
    id => "myspringlogfilter"
    match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}; [LOG_LEVEL=%{LOGLEVEL:log-level}, CMPNT_NM= %{GREEDYDATA:component}, MESSAGE=%{GREEDYDATA:message}" }
    overwrite => ["message"]

    }

}
output {
    elasticsearch {
        hosts => "localhost:9200" 
        manage_template => false
            index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}" 
        document_type => "%{[@metadata][type]}"     
    }
    stdout {
         codec => rubydebug
  }
}
Run Code Online (Sandbox Code Playgroud)

Sie*_*ena 2

在我注释掉logstash.yml中的指标设置后,问题得到解决,如下所示:

# ------------ Metrics Settings --------------
#
# Bind address for the metrics REST endpoint
#
#http.host: "127.0.0.1"
#
# Bind port for the metrics REST endpoint, this option also accept a range
# (9600-9700) and logstash will pick up the first available ports.
#
#http.port: 5044
#
Run Code Online (Sandbox Code Playgroud)

但仍然不知道为什么这解决了问题。因为两者(filebeat 和logstash)都指向同一端口。如果有人能解释一下原因,那就先谢谢了!