Logstash运行报错Unknown setting 'host'问题求助(ELK最新版)
解决Logstash输出Elasticsearch时的"Unknown setting 'host'"错误
从你的报错日志里能直接定位到核心问题:
[2018-01-14T15:42:00,912] [ERROR][logstash.outputs.elasticsearch] Unknown setting 'host' for elasticsearch
这是因为最新版本的Logstash Elasticsearch输出插件已经废弃了host这个配置项,改用hosts参数来指定Elasticsearch节点地址,而且它要求使用数组格式(哪怕你只配置单个节点)。
修正你的Output配置
把原来的Elasticsearch输出配置替换成下面的写法:
output{ elasticsearch { hosts => ["localhost:9200"] # Elasticsearch默认端口是9200,若你修改过端口请对应调整 } stdout { codec => rubydebug } }
额外的小提示
顺便提一下,你的filter部分有个语法小问题:if[type] == "syslog"应该改成if [type] == "syslog"(方括号和type之间需要加空格),虽然这不是当前报错的原因,但不修正可能会导致后续filter逻辑失效。
问题原因说明
Logstash的Elasticsearch输出插件在版本迭代中做了参数优化,旧版本的host参数被移除,改用hosts来支持配置多个Elasticsearch节点(适配集群场景),所以现在必须使用数组格式的hosts来指定节点地址。
内容的提问来源于stack exchange,提问作者farhad
相关产品推荐
相关产品推荐

