0

我正在将 ELK 与 kibana 一起使用。

我还使用 filebeat 将数据发送到 Logstash。

我创建的看起来像这样

{
    "mappings": {  
    "_default_": {
                   "properties": {
                                 "msg":{"type":"string", "index":"not_analyzed"}
                                 }
                 },
    "log": {
                   "properties": {
                                 "@timestamp":{"type":"date","format":"strict_date_optional_time||epoch_millis"},
                                 "@version":{"type":"string"},
                                 "beat": {
                                     "properties": {
                                           "hostname":{"type":"string"}, 
                                           "name":{"type":"string"},
                                                    }
                                          },
                                 "count":{"type":"long"},
                                 "host":{"type":"string"},
                                 "input_type":{"type":"string"},
                                 "message":{"type":"string"},
                                 "msg":{"type":"string","index":"not_analyzed"},
                                 "offset":{"type":"long"},
                                 "source":{"type":"string"},
                                 "type":{"type":"string"}

                                 }
                 }
              }
}';

我想知道,就像 beat 有 2 个字段,如主机名和名称。是否可以添加更多字段 environment: dev,例如我可以在 kibana 中看到的字段,以便我可以根据该字段过滤消息

4

1 回答 1

1

是的,您可以在配置中指定其他字段。filebeat.yml这些新字段将被创建。您有两个选项,您可以指定fields和/或fields_under_root.

如果您使用前者(见下文),fields带有您的自定义字段的新子组将出现在您的文档中,您将能够fields.environment: dev在 Kibana 中过滤消息。

fields:
    environment: dev

如果您使用后者(见下文),您的自定义字段将出现在文档的顶层,您将能够environment: dev在 Kibana 中过滤消息。

fields_under_root: true
于 2016-07-04T03:52:37.563 回答