既然你知道应该调用什么索引,只需将它放在elasticsearch outoput中:
Since you know what the index should be called, just put it in the `elasticsearch` output: output { elasticsearch { hosts => "localhost:9200" manage_template => false index => "filebeat-%{+YYYY.MM.dd}" document_type => "whatever_type_filebeat_put_in" } }
某些logstash插件使用元数据来传输您不想存储在文档中的字段。在第一个示例中,beats输入设置稍后在elasticsearch输出中使用的某些元数据来设置索引和类型。由于文件输入没有设置这些元数据字段,logstash将输出变量名而不是空字符串,因此它设置索引“%{[@ metadata] [beat]} - 2016.04.05”,日期已知,但元数据字段击败不是。
如果你只是将elasticsearch输出保留为默认值,它应该可以正常工作:
elasticsearch { hosts => "localhost:9200" }
如果将manage_template保留为false,它也不会应用 logstash- 模板和字段映射可能有点偏,所以我建议再次将其保留为默认值(true)。
logstash-