一、安装

1、下载并解压

# 下载,不同的操作系统下载不同的包
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.12.0-darwin-x86_64.tar.gz
# 解压
tar -zxvf logstash-7.12.0-darwin-x86_64.tar.gz
# 重命名
mv logstash-7.12.0 logstash

2、logstash 一些命令行参数

1、查看帮助信息

cd logstash
bin/logstash -h

2、加载指定pipeline文件路径

bin/logstash -f 文件路径

注意️:
-f 后面跟的文件路径可以是一个文件的路径,也可以是一个文件夹的路径,如果是文件夹的路径,则会加载该文件夹下的文件,组成一个大的 pipeline 文件。

3、检测配置文件语法是否有错误

bin/logstash -t

4、热加载pipeline配置文件

bin/logstash -r

5、指定绑定的主机和启动的端口

bin/logstash --http.host 127.0.0.1 --http.port 9210

注意️:
更多配置项参考 bin/logstash -h 的输出。

3、修改logstash的配置文件

1、修改jvm的配置

vim config/jvm.options

修改 -Xms 和 -Xmx 等其余参数的值。

2、修改logstash.yml配置

vim config/logstash.yml

# 设置节点的名字
node.name: logstash-01
# 设置 pipeline 的id
pipeline.id: main
pipeline.ordered: auto
# 设置pipeline 的线程数(filter+output),默认是cpu的核数
# pipeline.workers: 2
# 设置main pipeline文件所在的位置
# path.config:
# 自动重新加载pipeline配置文件
config.reload.automatic: true
# 设置http api 绑定的ip和端口
http.host: 127.0.0.1
http.port: 9201
# 设置logstash队列的类型 为持久化,默认是 memory
queue.type: persisted

4、编写一个pipeline文件

实现功能,接口从控制台输入的数据然后输出到控制台上。

文件名: pipeline.conf/demo-std.conf

# 输入, stdin 表示标准输入
input {
stdin {
codec => plain {
charset => "UTF-8"
}
# type 的值随便给,就一个标识,后期方便查询
type => "console input"
# 添加一个 tag
tags => ["console"]
}
} # 数据过滤
filter { } # 输出 stdout 表示输出
output {
stdout {
codec => rubydebug { }
}
}

5、启动logstash

启动的时候,直接某个pipeline文件

# -f 指定 pipeline 文件的路径
bin/logstash -f pipeline.conf/demo-std.conf

6、查看运行结果

二、pipeline的组成


由上图可知,一个pipeline有三个元素组成inputfilteroutput。其中 inputoutput是必须的。filter是可选的。

input:指定了从那个地方抓取数据,比如:文件(file)、beats、tcp等等。
filter:是我们可以修改input的数据,比如增加字段、重命名字段、修改字段类型等等。
output:决定了我们处理好的数据输出到哪里,比如:es、file、等等。

三、参考链接

1、logstash下载地址
2、logstash的目录结构
3、logstash.yml配置文件的参数
4、logstash命令行参数

最新文章

  1. LINQ系列:LINQ to SQL Where条件
  2. c/c++面试题(8)memcopy/memmove/atoi/itoa
  3. 2016/12summary
  4. MMM互助金融/理财源码
  5. SU sufdmod2命令学习
  6. iOS网络协议 HTTP/TCP/IP浅析
  7. 3.HelloWorld
  8. Java 多线程间的通讯
  9. VMware中第一次启动mac遇到的错误及解决方案
  10. epoll分析
  11. dedecms织梦建站总结
  12. WPF利用动画实现圆形进度条
  13. python 查看文件夹权限组和用OS模块操作文件夹
  14. Redis集群功能预览
  15. tensorflow 莫烦教程
  16. Query a JSON array in SQL
  17. JavaScript大杂烩7 - 理解内置集合
  18. 最小生成树(图论)--3366lg【模版】
  19. JavaScript学习笔记--语法
  20. 设置 sideload Outlook Add-ins

热门文章

  1. 网络协议之TCP和UDP
  2. throws声明异常中断式处理异常
  3. JDBC基础和使用
  4. Cobar源码分析之AST
  5. vue 工作随笔
  6. gitlab安装CI问题汇总
  7. swiper轮播高度不正常
  8. ecshop刷新页面出现power by ecshop和链接的解决办法
  9. javascript base64 encode decode 支持中文
  10. abp 以或的方式验证多个 AuthorizeAttribute