ELKF日志学习(八)Filebeat写入Elasticsearch
前言
上节将日志存储为 json
格式了,并通过 FileBeat
解析了 json
格式。
那我们可以直接将 json
日志写入 Elasticsearch
中了。
代码仓库
写入 Elasticsearch
官方文档:传送门
直接写入
为了方便,这里设置了 Elasticsearch
是免密的。
output.elasticsearch:
hosts: ["elasticsearch:9200"]
默认的 index
是 filebeat-*
格式的。
我们可以自定义 index
。
output.elasticsearch:
hosts: ["elasticsearch:9200"]
index: "diy_prefix-%{[agent.version]}-%{+yyyy.MM.dd}"
根据 input
指定不同的 index
如果我们想要根据不同的 input
来分别建立不同的 index
,可以根据自定义标签来判断。
还记得之前定义的 fileds.source
么?
output.elasticsearch:
hosts: ["elasticsearch:9200"]
indices:
- index: "nginx_access_log-%{+yyyy.MM.dd}"
when:
contains:
fields.source: "nginx_access_log"
- index: "nginx_error_log-%{+yyyy.MM.dd}"
when:
contains:
fields.source: "nginx_error_log"
其它(来自官网)
账号密码鉴权
output.elasticsearch:
hosts: ["elasticsearch:9200"]
username: "YOUR_USERNAME"
password: "YOUR_PASSWORD"
API key鉴权
output.elasticsearch:
hosts: ["elasticsearch:9200"]
api_key: "YOUR_API_KEY"
证书鉴权
output.elasticsearch:
hosts: ["elasticsearch:9200"]
ssl.certificate: "/etc/pki/client/cert.pem"
ssl.key: "/etc/pki/client/cert.key"
最后
不建议 Filebeat
监控太多的文件,还是一个服务一个 FileBeat
最好。
FileBeat
是很轻量,如果做了太多的事情,它也是会拖后腿的。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!