LogStash
1、LogStash的简介
LogStash能够动态的采集,转换和传输数据,不受格式和复杂度的影响。利用Grok从非结构化的数据中派生出结构,从IP地址解码出地理坐标,匿名化或者排除敏感字段,并简化整体处理过程。
LogStash分为Input、Filter、Output三个组件:
input:采集各种样式、大小和来源的数据
数据往往以各种各样的形式,或分散或集中地存在于很多系统中。 Logstash 支持 各种输入选择 ,可以在同一时间从众多常用来源捕捉事件。能够以连续的流式传输方式,轻松地从您的日志、指标、Web 应用、数据存储以及各种 AWS 服务采集数据。
Filter: 实时解析和转换数据
数据从源传输到存储库的过程中,Logstash 过滤器能够解析各个事件,识别已命名的字段以构建结构,并将它们转换成通用格式,以便更轻松、更快速地分析和实现商业价值。
利用 Grok 从非结构化数据中派生出结构
从 IP 地址破译出地理坐标
将 PII 数据匿名化,完全排除敏感字段
简化整体处理,不受数据源、格式或架构的影响
我们的过滤器库丰富多样,拥有无限可能。
OutPut:选择存储库,导出数据
尽管 Elasticsearch 是我们的首选输出方向,能够为我们的搜索和分析带来无限可能,但它并非唯一选择。
Logstash 提供众多输出选择,可以将数据发送到你要指定的地方,并且能够灵活地解锁众多下游用例。
每一个组件之间存在一个buffer缓冲区,input接收完数据之后,将数据送往buffer缓存起来,filter从buffer拉取数据进行过滤,将过滤后的数据送往buffer缓存起来,output从buffer处拉取过滤后数据,送往目的地存储起来
LogStash各组件之间的关系图