前言
Logstash 是数据收集引擎,可以对数据进行过滤、分析、丰富、统一格式等操作,存储到用户指定的位置,包含但不限于文件、 elasticsearch 。
代码仓库
配置
Logstash 的配置分为 3 部分,输入、过滤器 和 输出。
input { |
输入
相对于 FileBeat,Logstash 的输入类型丰富很多。
支持 FileBeat、文件、Kafka、redis、Github Webhook 等。
FileBeat
接收来自 FileBeat 的输入。官方文档传送门
input { |
File
接收来自 文件 的输入。官方文档传送门
input { |
Kafka
接收来自 Kafka 的输入。官方文档传送门
input { |
过滤器
这算是一个重点了,可以帮助我们将杂乱的日志解析成 json 方便分析。
用的比较多的就是 Gork 了。
输出
比起 FileBeat,Logstash 的输出可以做更多的事情,比如我们想要实现的 告警 功能。
支持 Elasticsearch、文件、Email、Kafka、redis、TCP 等。
其中,我们可以使用 TCP 实现我们的 钉钉告警。
我们目前是直接写入 Elasticsearch 的,这里放个 demo。
output { |
最后
本文只是做一些简单的介绍,实际应用,还是要依赖官方文档的帮助。