Filebeat配置之加载Elasticsearch索引模板

加载Elasticsearch索引模板

配置文件的setup.template部分filebeat.yml指定用于在Elasticsearch中设置映射的索引模板,如果启用了模板加载(默认设置),则filebeat会在成功连接到Elasticsearch后自动加载索引模板。

note:加载索引模板需要连接到Elasticsearch,如果输出是Logstash,则必须手动加载模板。

可以调整以下设置加载自己的模板或覆盖现有模板。

setup.template.enabled

  设置为false以禁用模板加载,如果将此项设置为false,则必须手动加载模板。

setup.template.name

  模板的名称,默认是filebeat,filebeat版本始终附加到给定名称,因此最终名称为filebeat-%{[beat.version]}

setup.template.pattern

   要应用于默认索引设置的模板模式。默认模式是filebeat-%。filebeat版本始终包含在模式中,因此最终模式是 filebeat-%{[beat.version]}-*。通配符 -* 用于匹配所有每日索引。

example:

setup.template.name: "filebeat"
setup.template.pattern: "filebeat-*"

setup.template.fields

  描述字段的YAML文件的路径,默认是fields.yml。如果设置了相对路径,则认为它相对于配置路径。

setup.template.overwrite

  一个布尔值,指定是否覆盖现有模板。默认值是false,true是覆盖现有模板。

setup.template.settings

  要放入settings.index Elasticsearch模板字典的设置字典。有关可用Elasticsearch映射选项的更多详细信息,请参阅:https://www.elastic.co/guide/en/elasticsearch/reference/6.4/mapping.html

setup.template.name: "filebeat"
setup.template.fields: "fields.yml"
setup.template.overwrite: false
setup.template.settings:
  index.number_of_shards: 1
  index.number_of_replicas: 1

setup.template.settings._source

  _source字段设置字典。有关可用设置,请参阅:https://www.elastic.co/guide/en/elasticsearch/reference/6.4/mapping-source-field.html

example:

setup.template.name: "filebeat"
setup.template.fields: "fields.yml"
setup.template.overwrite: false
setup.template.settings:
  _source.enabled: false

setup.template.append_fields [experimental]

  要添加到模板和kibana索引模式的字段列表,此设置添加新字段。它不会覆盖或更改现有字段。

  当数据包含filebeat事先不知道的字段时,此设置很有用。

  如果appen_fields同时制定overwrite: true,filebeat将覆盖现有模板并在创建在创建新索引时引用新的模板,现有指数不受影响,如果使用不同的append_fields设置运行filebeat的多个实例,则编写模板的最后一个实例优先。

  对此设置的任何更改也会影响kibana索引模式。

示例配置:

setup.template.overwrite: true
setup.template.append_fields:
- name: test.name
  type: keyword
- name: test.hostname
  type: long

setup.template.json.enabled

  设置为true时加载json的模板文件,指定Elasticsearch索引模板文件的路径并设置模板的名称。

setup.template.json.enabled: true
setup.template.json.path: "template.json"
setup.template.json.name: "template-name"

note:如果json模板被使用,fields.yml文件则跳过模板生成。

 

posted @ 2019-06-05 17:30  小尾巴想看雪  阅读(9246)  评论(0编辑  收藏  举报