首页 > 解决方案 > 来自 filebeat 的 Logstash 输出。什么是“索引”配置选项?

问题描述

这是从filebeat config中摘录的logstash输出here

在此处输入图像描述

我想知道索引与logstash有什么关系。在我的 logstash 配置中,如果我将日志重定向到 ElasticSearch,我相信我的日志将在“logstash-%{+YYYY.MM.dd}”下被索引,如文档所述here

那么为什么有一个选项可以设置indexfilebeat 的 logstash 输出呢?

标签: elasticsearchlogstashfilebeat

解决方案


存在此选项是因为您可以在 logstash 配置中使用该值作为索引名称,因为index在将数据发送到 elasticsearch 时,logstash 还具有设置索引名称的选项。

来自 filebeat的index选项值作为元数据字段传递给 logstash,您可以elasticsearch在 logstash 中配置输出以使用此字段作为索引名称。

output {
  elasticsearch {
    hosts => ["http://localhost:9200"]
    index => "%{[@metadata][beat]}" 
  }
}

index选项的默认值是 beats 名称、filebeat、metricbeat、heartbeat 和 auditbeat,例如,如果您logs-prd在 beat 配置文件中将其设置为,logstash 将使用该值作为索引名称。

如果您在将数据发送到elasticsearch之前将数据发送到logstash,则使用该index选项设置索引名称始终是logstash,如果您不设置该index选项,它将使用默认值,这logstash在较新的版本中很简单。


推荐阅读