Logstash 输出日志到 Elasticsearch 服务器 ConfigurationError

Logstash output logs to Elasticsearch server ConfigurationError

我使用 Logstash(2.4.0) 输出日志到 Elasticsearch(2.3.3) 服务器。

在启动Logstash之前,我写了一个配置文件logstash-2.4.0/conf:

input { 
    stdin {} 
} 
filter{
}           
output {            
    elasticsearch { host => localhost }
    stdout { codec => rubydebug }
}

然后运行./bin/logstash -f conf/logstash.conf,报错信息如下: 如何解决这个问题?

您可以使配置如下所示,而无需 filter。您遗漏了主机中的 "s" 和 localhost.

前后的双引号
input {
       stdin {}
}

output {
     elasticsearch { hosts => "localhost" }
     stdout { codec => rubydebug }
}

您可以从 here 查看 elasticsearch 插件的确切概要。

根据@Kulasangar 的回答,它在 CentOS 6.5 和 Ubuntu 16.04 上运行良好,但在我 MAC.I 更改为 root 用户时出现相同的错误:

sudo su

然后我重新启动 logstash 和 elasticsearch,一切正常。