- Logstash 输入阶段
- Logstash - 收集日志
- Logstash - 支持的输入
- Logstash 解析和转换
- Logstash - 解析日志
- Logstash - 过滤器
- Logstash - 转换日志
- Logstash 输出级
- Logstash - 输出级
- Logstash - 支持的输出
- Logstash 高级主题
- Logstash - 插件
- Logstash - 监控 API
- Logstash - 安全和监控
- Logstash 有用资源
- Logstash - 快速指南
- Logstash - 有用的资源
- Logstash - 讨论
Logstash - 简介
Logstash 是一个基于过滤器/管道模式的工具,用于收集、处理和生成日志或事件。它有助于集中和实时分析来自不同来源的日志和事件。
Logstash是用运行在JVM上的JRuby编程语言编写的,因此您可以在不同的平台上运行Logstash。它从几乎所有类型的源收集不同类型的数据,如日志、数据包、事件、事务、时间戳数据等。数据源可以是社交数据、电子商务、新闻文章、CRM、游戏数据、网络趋势、金融数据、物联网、移动设备等。
Logstash 一般功能
Logstash 的一般特征如下:
Logstash 可以从不同来源收集数据并将其发送到多个目的地。
Logstash 可以处理所有类型的日志数据,例如 Apache 日志、Windows 事件日志、网络协议数据、标准输入数据等等。
Logstash 还可以处理 http 请求和响应数据。
Logstash提供了多种过滤器,可以帮助用户通过解析和转换数据来找到数据的更多含义。
Logstash 还可用于处理物联网中的传感器数据。
Logstash 是开源的,可在 Apache 许可证版本 2.0 下使用。
Logstash 关键概念
Logstash 的关键概念如下:
事件对象
它是Logstash中的主要对象,封装了Logstash管道中的数据流。Logstash 使用此对象来存储输入数据并添加在过滤阶段创建的额外字段。
Logstash 为开发人员提供事件 API 来操作事件。在本教程中,此事件有各种名称,例如记录数据事件、日志事件、日志数据、输入日志数据、输出日志数据等。
管道
它由 Logstash 中从输入到输出的数据流阶段组成。输入数据进入管道并以事件的形式进行处理。然后以用户或终端系统所需的格式发送到输出目的地。
输入
这是Logstash管道的第一阶段,用于获取Logstash中的数据以进行进一步处理。Logstash 提供各种插件来从不同平台获取数据。一些最常用的插件是 – File、Syslog、Redis 和 Beats。
筛选
这是 Logstash 的中间阶段,实际处理事件发生在此处。开发人员可以使用 Logstash 预定义的正则表达式模式来创建序列,以区分事件中的字段和接受输入事件的标准。
Logstash 提供各种插件来帮助开发人员解析事件并将其转换为所需的结构。一些最常用的过滤器插件是 – Grok、Mutate、Drop、Clone 和 Geoip。
输出
这是 Logstash 管道的最后一个阶段,可以将输出事件格式化为目标系统所需的结构。最后,它使用插件将处理完成后的输出事件发送到目的地。一些最常用的插件是 – Elasticsearch、File、Graphite、Statsd 等。
Logstash的优势
以下几点解释了Logstash的各种优点。
Logstash 提供正则表达式模式序列来识别和解析任何输入事件中的各个字段。
Logstash 支持各种 Web 服务器和数据源来提取日志数据。
Logstash 提供了多个插件来解析日志数据并将其转换为任何用户所需的格式。
Logstash 是集中式的,这使得处理和收集来自不同服务器的数据变得容易。
Logstash 支持许多数据库、网络协议和其他服务作为日志记录事件的目标源。
Logstash 使用 HTTP 协议,这使得用户能够升级 Elasticsearch 版本,而无需锁定步骤升级 Logstash。
Logstash 的缺点
以下几点解释了Logstash的各种缺点。
Logstash 使用 http,这会对日志数据的处理产生负面影响。
使用 Logstash 有时可能有点复杂,因为它需要对输入日志数据有很好的理解和分析。
过滤器插件不是通用的,因此,用户可能需要找到正确的模式序列以避免解析错误。
在下一章中,我们将了解 ELK Stack 是什么以及它如何帮助 Logstash。