Logstash 基本入门

本文介绍了Logstash的数据处理流程,包括输入、过滤和输出三个阶段,详细讲解了配置文件、事件(Event)的概念,以及如何从Kafka到Elasticsearch的数据传输。Logstash使用事件队列协调不同组件,提供死信队列处理失败事件。文中还提到了kafka producer的配置和Logstash的grok、json插件使用。
摘要由CSDN通过智能技术生成

介绍

Logstash 数据传输管道所具备的流水线特征,体现在数据传输过程分为三个阶段:输入、过滤和输出。这三个阶段按顺序依次相连,像一个加工数据的流水线。 在实现上,它们分别由三种类型的插件实现,即输入插件、过滤器插件和输出插件,并可通过修改配置文件实现快速插拔。除了这三种类型的插件以外,还有种称为编解码器(Codec)的插件。编解码器插件用于在数据进入和离开管道时对数据做解码和编码,所以它一般都是与具体的输入插件或输出插件结合起来使用。

事件(Event)是 Logstash 中另一个比较重要的概念,它是对 Logstash 处理数据的一种面向对象的抽象。如果将 Logstash 比喻为管道,那么事件就是流淌在管道中的水流。事件由输入插件在读入数据时产生,不同输入插件产生事件的属性并不完全相同,但其中一定会包含有读入的原始数据。过滤器插件会对这些事件做进步处理,处理的方式主要体现在对事件属性的访问、添加和修改。最后,输出插件会将事件转换为目标数据源的数据格式并将它们存储到目标数据源中。

在 Logstash 管道中,每个输入插件都是在独立的线程中读取数据并产生事件。但输入插件并不会将事件直接传递给过滤器插件或输出插件,而是将事件写入到一个队列中。**队列可以是基于内存的,也可以是基于硬盘的可持久化队列。**Logstash 管道会预先生成一组工作线程,这些线程会从队列中取出事件并在过滤器中处理,然后再通过输出插件将事件输出。事件队列可以协调输入插件与过滤器插件、输出插件的处理能力,使得 Logstash 具备了一定的削峰填谷能力。

除了输入插件使用事件队列与过滤器插件、输出插件交互以外,Logstash 还在输出插件与目标数据源之间提供了一个死信队列(Dead Letter Queue)。死信队列会在目标数据源没有成功接收到数据时,将失败的事件写人到队列中以供后续做进步处理。

安装

yum

wget https://artifacts.elastic.co/GPG-KEY-elasticsearch
sudo rpm --import GPG-KEY-elasticsearch
vim /etc/yum.repos.d/logstash.repo
 
[logstash-7.x]
name=Elastic repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

yum list logstash --showduplicates | sort -r
# 安装与 es 版本一致的 logstash
sudo yum install -y logstash-7.13.2-1

源码

wget https://artifacts.elastic.co/downloads/logstash/logstash-8.4.3-linux-x86_64.tar.gz
tar -zxvf logstash-8.4.3-linux-x86_64.tar.gz -C /usr/local

使用

kafka producer

import json
from datetime import datetime
import time

from kafka import KafkaProducer

producer = KafkaProducer(bootstrap_servers='10.124.5.190:9092',
  
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值