ELK入门系列(05)—— 最简单的ELK

1、前言

在快速搭建完各个组件之后,我们将这几个组件串起来搭建一个简单的ELK日志收集系统。本案例以收集一个springboot的web项目日志作为demo来演示ELK的应用场景。

2、ELK流程调试

2.1、启动Elasticstarch并验证

通过curl命令去验证

[root@test-l27-14-70 ~]# curl http://localhost:9200
{
  "name" : "RVNfQjd",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "myUulbUOROS2gqnQcZA-bA",
  "version" : {
    "number" : "6.2.3",
    "build_hash" : "c59ff00",
    "build_date" : "2018-03-13T10:06:29.741383Z",
    "build_snapshot" : false,
    "lucene_version" : "7.2.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}
You have new mail in /var/spool/mail/root
[root@test-l27-14-70 ~]# 
2.2、启动kibana并验证

nohup ./kibana &


image.png
2.3、配置我们web项目的日志输出路径并启动

我们配置了springboot项目的日志输出路径并启动

#log配置
logging.path=/usr/local/logs
logging.level.org=INFO
logging.level.com=INFO
image.png
[root@test-l27-14-70 logs]# pwd
/usr/local/logs
[root@test-l27-14-70 logs]# ll
total 128
-rw-r--r-- 1 root root 98310 Aug 12 14:39 spring.log
[root@test-l27-14-70 logs]# 

我们启动了web项目,并能看到日志记录存放到了指定的/usr/local/logs目录之下

2.4、书写logstash启动配置并启动对日志文件的监听

首先,我们logstash的监听问题是/usr/local/log/目录下的日志文件
其次,我们要把监听到的日志信息写到我们已经准备好的elasticsearch机器上去

明白以上两点,我们来书写logstash的启动配置 web-elk.conf

#输入
input{
 file{
  path => "/usr/local/logs/*.log"
 }
}

#过滤器
filter{}

#输出
output{
 elasticsearch{
  hosts=>["127.0.0.1:9200"]
  index => "rc-admin-business-log" #要输入的elasticsearch的索引,没有会自建
 }

 #并打印到控制台
 stdout{codec => rubydebug} 
}

有了以上启动文件,我们再来启动我们的logstash,键入命令:./logstash -f ./web-elk.conf


image.png

我们可以看到logstash的控制台已经打印出部分日志,剩下的我们就去kibana上看看有没有进elasticsearch呢!

image.png

最终,我们可以在kibana上正常查询到我们的项目日志。这样一套简单的ELK就搭建完成了。

推荐阅读更多精彩内容