6

我有一个弹性搜索集群(ELK)和一些使用filebeat将日志发送到logstash的节点。我环境中的所有服务器都是 CentOS 6.5。

每个服务器中的 filebeat.yml 文件由 Puppet 模块强制执行(我的生产服务器和测试服务器都具有相同的配置)。

我想在每个文档中都有一个字段来说明它是否来自生产/测试服务器。

我想在每个文档中生成一个动态自定义字段,该字段使用 filebeat.yml 文件指示环境(生产/测试)。

为了解决这个问题,我想运行一个返回环境的命令(可以通过事实了解环境)并将其添加到 filebeat.yml 文件中的“环境”自定义字段下,但我找不到任何这样做的方式。

是否可以通过 filebeat.yml 运行命令?还有其他方法可以实现我的目标吗?

4

3 回答 3

15

在你的 filebeat.yml 中:

filebeat:
  prospectors:
    -
      paths:
        - /path/to/my/folder
      input_type: log

      # Optional additional fields. These field can be freely picked
      # to add additional information to the crawled log files
      fields:
        mycustomvar: production
于 2016-05-08T07:42:28.277 回答
3

在 filebeat-7.2.0 我使用下一个语法:

processors:
- add_fields:
    target: ''
    fields:
      mycustomfieldname: customfieldvalue

注意:target = '' 表示 mycustomfieldname 是顶级字段 官方 7.2 文档

于 2019-09-01T19:59:36.703 回答
2

是的,您可以通过 filebeats 向文档添加字段。

官方文档告诉你如何。

于 2016-04-08T06:57:12.723 回答