1 简介
logstash是一个灵活的数据传输和处理系统,开发语言是JRuby,当然是为了与Java平台对接,不过与Ruby语法兼容良好,非常简洁强大,经常与ElasticSearch,Kibana配置,组成著名的ELK技术栈,非常适合用来做日志数据的分析。
Logstash的任务,就是将各种各样的数据,经过配置转化规则,统一化存入Elasticsearch。使用Ruby开发的Logstash在灵活性上,非常出色。不过性能一直是被诟病的问题。
由于Logstash在数据收集上并不出色,而且作为agent,性能并不达标。elastic发布了beats系列轻量级采集组件。至此,elastic形成了一个完整的生态链和技术栈,成为大数据市场的佼佼者
2 Logstash的作用
2.1 输入、过滤器和输出
Logstash 能够动态地采集、转换和传输数据,不受格式或复杂度的影响。利用 Grok 从非结构化数据中派生出结构,从 IP 地址解码出地理坐标,匿名化或排除敏感字段,并简化整体处理过程。
2.2 采集各种样式、大小和来源的数据
数据往往以各种各样的形式,或分散或集中地存在于很多系统中。Logstash 支持各种输入选择,可以同时从众多常用来源捕捉事件。能够以连续的流式传输方式,轻松地从您的日志、指标、Web 应用、数据存储以及各种 AWS 服务采集数据
2.3 实时解析和转换数据
数据从源传输到存储库的过程中,Logstash 过滤器能够解析各个事件,识别已命名的字段以构建结构,并将它们转换成通用格式,以便进行更强大的分析和实现商业价值。
Logstash 能够动态地转换和解析数据,不受格式或复杂度的影响:
利用 Grok 从非结构化数据中派生出结构
从 IP 地址破译出地理坐标
将 PII 数据匿名化,完全排除敏感字段
简化整体处理,不受数据源、格式或架构的影响
使用我们丰富的过滤器库和功能多样的 Elastic Common Schema,您可以实现无限丰富的可能。
2.4 导出数据
尽管 Elasticsearch 是我们的首选输出方向,能够为我们的搜索和分析带来无限可能,但它并非唯一选择。Logstash 提供众多输出选择,您可以将数据发送到您要指定的地方,并且能够灵活地解锁众多下游用例。
2.5 小结
总之,logstash就是一个具备实时数据传输能力的*管道*,负责将数据信息从管道的输入端传输到管道的输出端;与此同时这根管道还可以根据需求在中间加上滤网;是一个input | filter | output 的数据流。
3 相关文档
3.1 官方文档
3.2 版本和支持系统
3.3 下载地址
3.4 INPUT选择
3.5 OUTPUT选择
3.6 FILTER选择
4 下载安装
下载后直接解压即可
5 测试
1)进入bin目录
2)执行以下目录
./logstash -e 'input { stdin { } } output { stdout {} }'
该目录标识输入为stdin方式,输出为stdout方式,没有filter,也就是控制台输入什么就在控制台输出什么
如下说明启动成功
3)测试输入
输入 ni hao ya,立马就输出了。
4)说明
上面的例子只是简要的看一下logstash的工作方式。
INPUT(多种自由选择)采集数据,FILTER处理转换(多种自由选择,也可以不要),OUTPUT输出(多种自由选择)。
标签:输出,logstash,简要,介绍,Logstash,文档,数据,LogStash,输入 From: https://www.cnblogs.com/jthr/p/17306301.html