文章采集完(上篇ELK(ElasticSearch+Logstash+Kibana)5.0搭建(组图))

优采云 发布时间: 2021-10-10 02:01

  文章采集完(上篇ELK(ElasticSearch+Logstash+Kibana)5.0搭建(组图))

  上一篇ELK(ElasticSearch+Logstash+Kibana)5.0构建全记录讲了ElasticSearch和Kibana的构建,本文将使用ELK采集分析nginx日志记录Logstash的构建, 巩固ELK的知识

  

  这个Logstash官方的描述很直观,Logstash其实就是一个管道(Pipeline)

  管道的源输入是多种数据源(普通文件、redis、http、log4j、kafka……官方列出了52种类型)

  经过自己的过滤机制(过滤器匹配的数据可以输出到输出)

  输出到 Elasticsearch(多达 50 多种输出类型)

  一、Logstash 启动

  > cd logstash-5.0.0/config # 进到config目录

> vim logstash-nginx.conf # 创建一个叫logstash-nginx.conf的配置文件

  logstash-nginx.conf 文件的内容是

  input {

file {

path => [ "/var/log/nginx/access.log" ] # nginx日志的目录

start_position => "beginning" # 从文件开头采集

}

}

filter {

#Only matched data are send to output.

}

output {

elasticsearch {

action => "index" #The operation on ES

hosts => "127.0.0.1:9200" #ElasticSearch host, can be array.

index => "applog" # 创建一个ES的index

}

}

  启动 Logstash

  > cd ..

> ./bin/logstash -f config/logstash-nginx.conf

  纠结,到此为止,我们已经通过logstash完成了:采集 将本机的nginx日志存储到ElasticSearch的配置过程非常简单。我们可以通过浏览器查看存储在Es索引中的数据为applog

  

  二、kibana 报表配置

  

  简单介绍左边的菜单栏

  好的,让我们回到上图。我们在管理中配置了一个 applog 索引。细心的同学会发现,这其实就是上面的logstash-nginx.conf文件,输出中Elasticsearch的索引,记住Time-field name的那一项。它是必需的。我的理解是时间是日志不可缺少的维度,所以我们Es中的数据必须有时间字段

  进入Discover,我们可以看到applog索引下的nginx数据,记得右上角是时间范围选项

  

  进入Visualize,让我们自定义一个报表,饼图就做好了,选择Pie chart

  

  我的要求是统计applog索引数据中收录200、304、404的三个字符串的个数。详细配置说明不再展开。将报告名称保存并排序为【状态码】

  好的,我们再次进入 Dashboard 配置仪表板。这很简单。选择我们刚刚配置的【状态码】(我也配了两个报表),就可以显示了。您可以随意拖动、放大或缩小它。

  

  至此,本文使用Logstash采集nginx日志,保存到Elasticsearch,然后在Kibana报告上展示整个过程。它们都是最简单的演示。你可以做更多。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线