【问题标题】:How to use the index specified in Filebeat in logstash.yml?如何在logstash.yml中使用Filebeat中指定的索引?
【发布时间】:2018-08-18 07:50:04
【问题描述】:

我正在使用Filebeat 将日志文件发送到我的Logstash,配置如下:

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - ${PWD}/filebeat-volume/data/*.txt

output.logstash:
  enabled: true
  hosts: ["elk:5044"]
  index: "custom-index"

setup.kibana:
  host: "localhost:5601"

input {
  beats {
    port => "5044"
  }
}

output {
  elasticsearch {
    hosts => [ "localhost:9200" ]
    index => "<WHAT SHOULD GO HERE???>"
  }
}

filebeat.yml 中,我指定了一个索引(“自定义索引”)。如何在我的logstash.yml 中设置相同的索引以发送到Elasticsearch

【问题讨论】:

  • 我会添加相同的索引名称“cusotm-index”,请注意您的 filebeat 配置中的拼写错误。实际上,我会从 filebeat 中删除索引并仅在 logstash 上设置它。 (这就是我的设置方式,我没有在 filebeat 上设置任何索引,只在 logstash 上)
  • 感谢您的回复!问题是我有一个 elk 容器,它的 Logstash 正在端口 5044 上侦听来自许多其他 Filebeat 容器的新日志(都在同一个 docker 网络上,但在随机时间创建)。现在,由于新日志来自许多地方,它们需要为它们的日志使用不同的索引,因此 Filebeat 应该确定索引名称。 (感谢您指出错字顺便说一句!)

标签: logstash elastic-stack filebeat


【解决方案1】:

我知道你现在想要什么了,你应该用下面的输出配置来设置 Logstash,这样它将把 filebeat 中设置的索引传递给 Elasticsearch。

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

Point 2 in this example

【讨论】:

    猜你喜欢
    • 2017-05-25
    • 1970-01-01
    • 2019-02-04
    • 2023-01-03
    • 2019-12-16
    • 2016-12-14
    • 2021-01-10
    • 2021-03-13
    • 2013-10-04
    相关资源
    最近更新 更多