参考起源:https://www.zhihu.com/search?...

一、logstash简介

后面装置与配置中已近对es和kibana进行了简略的介绍,这里次要介绍logStash导入日志到es的索引中并应用kibana的搜寻,次要介绍logstash相干。
logstash在2008年已近呈现了,Logstash作为Elasicsearch罕用的实时数据采集引擎,能够采集来自不同数据源的数据,并对数据进行解决后输入到多种输入源,是Elastic Stack 的重要组成部分。

二、logstash解决流程

名词解析: Pipeline 管道 codecs 编解码器

如上图所示LogStash的数据处理过程次要包含:input.filters.Outputs三局部。 另外在Inputs和Outputs中能够应用Codecs对数据格式进行解决。
  • 1)Inputs:用于从数据源获取数据,常见的插件如file, syslog, redis, beats 等
  • 2)Filters:用于解决数据如格局转换,数据派生等,常见的插件如grok, mutate, drop, clone, geoip等
  • 3)Outputs:用于数据输入,常见的插件如elastcisearch,file, graphite, statsd等
  • 4)Codecs:Codecs不是一个独自的流程,而是在输出和输入等插件中用于数据转换的模块,用于对数据进行编码解决,常见的插件如json,multiline

1、执行模型

  • (1)每个Input启动一个线程,从对应数据源获取数据
  • (2)Input会将数据写入一个队列:默认为内存中的有界队列(意外进行会导致数据失落)。为了避免数失落Logstash提供了两个个性:d
    Persistent Queues:通过磁盘上的queue来避免数据失落
    Dead Letter Queues:保留无奈解决的event(仅反对Elastic
  • (3)Logstash会有多个pipeline worker, 每一个pipeline worker会从队列中取一批数据,而后执行filter和output(worker数目及每次解决的数据量均由配置确定)

三、实例

1、日志采集

采纳的工具 FileBeatinput 插件,采集本地日志,而后将后果输入。
FileBeat介绍
上面会整合FileBeat来采集日志,它能够采集sql、redis、以及ide运行环境的日志