加載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文件則跳過模板生成。