监控日志loging Logstash (一)

本文详细介绍了Logstash,一个开源的数据收集引擎,用于实时数据传输和处理。Logstash通过inputs、filters和outputs实现数据流水线处理,常用于ELK日志分析系统中。文中涵盖了Logstash的系统结构、应用场景、安装步骤,以及输入、过滤、输出插件的使用,包括File、Beats、TCP、Redis等输入插件,grok、date、mutate等过滤插件,以及Elasticsearch、Redis、File等输出插件的配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实时数据收集引擎Logstash

一、Logstash简介

1、官网地址

https://www.elastic.co/guide/en/logstash/7.x/introduction.html

2、软件介绍

官方介绍:Logstash is an open source data collection engine with real-time pipelining capabilities。简单来说logstash就是一根具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端;与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满足你的各种应用场景。

Logstash常用于日志关系系统中做日志采集设备;

3、系统结构

在这里插入图片描述

Logstash的事件(logstash将数据流中等每一条数据称之为一个event)处理流水线有三个主要角色完成:inputs –> filters –> outputs:

inpust:必须,负责产生事件(Inputs generate events),常用:File、syslog、redis、beats(如:Filebeats)

filters:可选,负责数据处理与转换(filters modify them),常用:grok、mutate、drop、clone、geoip

outpus:必须,负责数据输出(outputs ship them elsewhere),常用:elasticsearch、file、graphite、statsd

其中inputs和outputs支持codecs(coder&decoder)在1.3.0 版之前,logstash 只支持纯文本形式输入,然后以过滤器处理它。但现在,我们可以在输入 期处理不同类型的数据,所以完整的数据流程应该是:input | decode | filter | encode | output;codec 的引入,使得 logstash 可以更好更方便的与其他有自定义数据格式的运维产品共存,比如:graphite、fluent、netflow、collectd,以及使用 msgpack、json、edn 等通用数据格式的其他产品等

4、应用场景

Logstash最常用于ELK(elasticsearch + logstash + kibane)中作为日志收集器使用

二、Logstash安装

1、环境清单

操作系统:CentOS Linux release 7.3.1611

Logstash版本:logstash-5.4.1

Jdk版本:1.8.0_131

2、软件下载

· 下载Jdk:

[chenlei@chenlei ~]$ wget --no-check-certificate --no-cookies --header “Cookie: oraclelicense=accept-securebackup-cookie” http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz

· 下载Logstash:

[chenlei@chenlei ~]$ wget https://artifacts.elastic.co/downloads/logstash/logstash-5.4.1.tar.gz

3、安装步骤

3.1、安装Jdk

· 创建安装目录

[chenlei@chenlei ~]$ sudo mkdir /usr/local/Java

· 解压缩安装文件

## 移动安装包到安装目录 ##

[chenlei@chenlei ~]$ sudo mv jdk-8u131-linux-x64.tar.gz /usr/local/Java/

## 进入安装目录 ##

[chenlei@chenlei ~]$ cd /usr/local/Java/

## 解压缩安装包 ##

[chenlei@chenlei Java]$ sudo tar -zxvf jdk-8u131-linux-x64.tar.gz

## 删除安装包 ##

[chenlei@chenlei Java]$ sudo rm jdk-8u131-linux-x64.tar.gz

· 测试安装是否成功

## 进入JAVA_HOME ##

[chenlei@chenlei Java]$ cd jdk1.8.0_131/

## 测试java命令是否可以正常执行 ##

[chenlei@chenlei jdk1.8.0_131]$ ./bin/java -version

· 配置JAVA_HOME环境变量

[chenlei@chenlei ~]$ cd ~

[chenlei@chenlei ~]$ vi .bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

## 配置JAVA_HOME环境变量 ##

JAVA_HOME=/usr/local/Java/jdk1.8.0_131

## 将java执行目录加入到PATH下面 ##

PATH= P A T H : PATH: PATH:HOME/.local/bin: H O M E / b i n : HOME/bin: HOME/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值