2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 搭建ELK(ElasticSearch+Logstash+Kibana)日志分析系统(二) Logstash简介及常见配置语法

搭建ELK(ElasticSearch+Logstash+Kibana)日志分析系统(二) Logstash简介及常见配置语法

时间:2020-10-20 10:43:19

相关推荐

搭建ELK(ElasticSearch+Logstash+Kibana)日志分析系统(二) Logstash简介及常见配置语法

Logstash通常被分为shipper和indexer两种角色,其中shipper负责收集转发日志至redis,而indexer负责将redis传送过来的日志输出到elasticSearch,如下图(图片来自网络,如有侵权,可联系我删除)

1、数据定义与类型

1)Logstash用 {} 来定义区域,用 字段名=>字段内容 来定义变量,变量都是以键值对的形式体现的,例如 filter{ mutate{ add_field{ debug=>true##bool类型 ip=>"192.168.1.1"##string类型 port=>5602##number类型 } } }

2)Logstash支持少量的数据值类型 debug=>true##bool类型 ip=>"192.168.1.1"##string类型 port=>5602##number类型 match=>["windows","linux","mac"]##array类型 ##hash类型 options=>{ today=>"Monday", tommrow=>"Tuesday" }

2、字段引用于条件判断

1)在logstash中引用一个字段,只需在[]里写上字段名即可,如

if[port]==5602{ ##... }

2)条件判断

==(等于),!=(不等于),<(小于),>(大于),<=(小于等于),>=(大于等于) =~(匹配正则),!~(不匹配正则) in(包含),notin(不包含) and(与),or(或),nand(非与),xor(非或) ()(复合表达式),!()(对复合表达式结果取反)

例如,我们经常会用到的一个判断:

if"_grokparsefailure"notin[tags]{ elasticsearch{ ##... } }

3、常见命令行参数

1)-e 即立即执行,这个在上一节已经介绍过了 bin/logstash-e''

2) --config 或者 -f 即使用配置文件。在实际运用中,我们可能会写很大的配置,所以我们一般把它写在conf文件里,然后通过-f指定配置文件来运行,如 bin/logstash-ftest.conf

3) --log 或者 -l 指定日志文件(logstash运行的日志)的位置,如 bin/logstash-llogs/logstash.log 4) --pipline-workers 或者 -W ,指定运行filter和output的线程数量。默认是CPU核数

还有其他一些不常见的这里就没有列举了。并且从Logstash 5.0开始,所有的命令行参数文件都可以在Logstash文件夹/config/logsatsh.yml文件里配置了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。