简介
Logstash是一个具有实时管线能力的开源数据收集引擎。在ELK Stack中,通常选择更轻量级的Filebeat收集日志,然后将日志输出到Logstash进行加工处理,再将处理后的日志输出到指定的目标(ElasticSearch,Kafka等)当中。
Logstash事件的处理管线是inputs → filters → outputs,三个阶段都可以自定义插件,本文主要介绍如何开发自定义需求最多的filter插件。
Logstash的安装就不详细介绍了,下载传送门:https://www.elastic.co/downloads/logstash。
前置准备
我们使用docker来讲解如何给logstash定制一个filter插件,首先,我们下载logstash官方最新版本的镜像。下载方式: docker pull logstash
,下载好后我们就来Run这个镜像,命令:docker run -it logstash bash
,这样我们就进入到logstash容器中了。接下来我们就安装下两个基本的软件包,一个vim,一个rsyslog,命令如下:apt-get update && apt-get -y install vim rsyslog && /etc/init.d/rsysylog start
。到此我们的准备工作就完毕了。