SpringBoot 整合 Elastic Stack 最新版本(7.14.1)分布式日志解决方案,开源微服务全栈项目【有来商城】的日志落地实践

一. 前言

日志对于一个程序的重要程度不用过多的言语修饰,本篇将以实战的方式讲述开源微服务全栈项目 有来商城 是如何整合当下主流日志解决方ELK +Filebeat 。 话不多说,先看实现的效果图,绝不搞些浪费大家时间且没意义的东西。

image-20210925120303663

二. Elastic Stask 技术栈

1. 为什么引入 Filebeat ?

ELK 作为分布式日志解决方案让人为之津津乐道,即使没有实践过也能耳熟,可见其火热程度。 Beats 作为数据采集器后来加入进来 Elastic 家族,ELK正式更名为 Elastic Stack。 在属于 ELK 的那个时代,数据采集是由 Logstash 完成,还有比 Filebeat 更为强大的过滤处理能力,这样便不禁让人心生疑问,为什么还要引入 Filebeat 呢?是多此一举吗?先看下官方给 Beats的解释:

轻量型,从源头采集,简单明了。

Beats 能够采集符合 Elastic Common Schema (ECS) 要求的数据,如果您希望拥有更加强大的处理能力,Beats 能够将数据转发至 Logstash 进行转换和解析。

其中重点的关键字从源头收集,更加轻量。

Logstash 拥有比 Filebeat 更为丰富的功能,但能力越大,背负的越多,意味着 Logstash 作为采集工具会比 Filebeat 占用更多的系统资源。其中有个依据Logstash 认的堆内存大小是 1G,Filebeat 占用内存仅仅大概是 10M 左右。

2. ELK +Filebeat 日志解决方案流程

Filebeat 会定时监听事先指定的日志文件,如果日志文件有变化,会将数据推送至 Logstash ,经过 Logstash 过滤筛选处理将我们想要的日志数据存入ElasticSearch,最终通过 Kibana 将数据呈现出来。

三. 环境准备

实战环境这里我使用 有来商城 线上云服务器做的,因服务器资源有限所以做了堆内存保守的设置,大家可以用虚拟机测试。

相关文章

TCP/IP套接字登录方法是MySQL在一切服务平台都提供的一种登录...
easy-rule规则引擎最佳落地
Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分...
最近壹哥的一个学生,在利用spring-data-elasticsearch访问E...
java 操作elasticsearch详细总结
原文链接:http://www.ruanyifeng.com/blog/2017/08/elastic...