01-Logstash 首次使用

Logstash 01

Logstash 02

Logstash 是一个具有实时管道处理能力的开源数据收集引擎, 它可以动态地整合各种来源的数据, 对数据进行处理后输出到指定的多个目的地

安装

Logstash 默认使用捆绑的 AdoptOpenJDK 11, 可以通过 JAVA_HOME 指定另一个 JDK

Installing from a Downloaded Binary

下载二进制压缩包

在任意位置解压

tar -xzf logstash-7.14.0-linux-x86_64.tar.gz

sudo mv logstash-7.14.0 /usr/share/

Installing from Package Repositories

以 APT 为例

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

sudo apt-get update
sudo apt-get install logstash

Logstash 的安装位置为 /usr/share/logstash


配置 Logstash 环境

将 Logstash 安装目录的所有者变更到当前用户

sudo chown -R $USER:$USER /usr/share/logstash-7.14.0

USER 是一个环境变量, 表示当前用户

将 Logstash 的可执行目录加入环境变量 PATH 中, 可将下面的命令置于 ~/.bashrc 末尾, 这样每次都可直接使用 logstash 启动 Logstash

export PATH="$PATH:/usr/share/logstash-7.14.0/bin"

测试

一个 Logstash Pipeline 由 inputs, filters 和 outputs 组成


Logstash 拥有大量 input, filter, codec, and output 插件可供使用

这里使用最简单的配置测试一下

  • input 部分使用 stdin
  • 省略 filter 部分
  • output 部分使用 stdout
logstash -e 'input { stdin { } } output { stdout { } }'

-e 选项表示直接从命令行读取配置

对应的配置文件等同于

input {
	stdin { }
}

output {
	stdout { }
}

完全启动 Logstash 后, 在终端输入 “Logstash”, 得到以下输出

{
    "@timestamp" => 2021-08-13T08:51:18.463Z,
          "host" => "911ME",
       "message" => "Logstash",
      "@version" => "1"
}

图示如下:

image-20210813165412424


不可能每一次都在终端输入配置, 下面的示例使用配置文件 pipe.conf 启动 logstash, 内容如下:

input {
	stdin { codec => json }
}

output {
	stdout { }
}

codec 仅能在 input 和 output 部分使用

启动 logstash

logstash -f pipeline.conf

在终端输入:

{"name": "Hoss"}

Logstash 输出如下:

{
    "@timestamp" => 2021-08-13T08:59:09.814Z,
      "@version" => "1",
          "name" => "Hoss",
          "host" => "911ME"
}

输出中包含了 name 字段

如果配置中 stdout 没有指定 codec, 默认使用的 codec 为 rubydebug

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值