默认的filebeat配置会把所有的索引都放到一个文件中,通过摸索发现可以自定义索引的名字、模板、生命周期
(重点注意)该配置文件只适应于ES版本是7,不适应于8的版本,两个版本的配置文件差异很大
- /app/logs/info.log日志文件为JSON格式
- 自定义索引生命周期名为:pn_springboot,可提前建好
- 自定义索引名为:idx_springboot
- 自写义索引模板名为:tn_springboot
这样上传到es的索引名为idx_springboot-20240721-000001的索引名,不是默认的filebeat了
yaml
filebeat.inputs:
- type: log
paths:
- /app/logs/info.log
json.keys_under_root: true
json.add_error_key: true
json.overwrite_keys: true
setup.ilm.enabled: auto
setup.ilm.rollover_alias: "idx_springboot"
setup.ilm.pattern: "{now/d}-000001"
setup.ilm.policy_name: "pn_springboot"
setup.template.enabled: true
setup.template.name: "tn_springboot"
setup.template.pattern: "idx_springboot-*"
setup.template.overwrite: true
setup.template.settings:
index.lifecycle.name: "pn_springboot"
index.lifecycle.rollover_alias: "idx_springboot"
output.elasticsearch:
hosts: ["http://192.168.21.2:8800"]
username: "elastic"
password: "elastic"
我是感觉这么配置有点不太合理,es版本是8的配置就比较合理了,ES8版本配置:filebeat把日志文件上传到Es中配置(ES8版本)
为保护我的个人隐私,有的生命周期名、索引名、模板名我做过修改,如发现有问题,可评论,或与我联系