TraceId 搭配 ELK ,碉堡了!


今天就接着 TraceId 做一些优化,如果想快速的定位到问题,就要实现对日志的快速搜索,所以本文就引入 ELK 技术栈。

ELK 是 ES、Logstash、Kibana 的总称,其核心功能就是实现数据的收集、搜索、可视化。具体功能和使用在本文都会提到。

需求分析

先分析一下,我们想实现的核心功能是搜索,必然是用 ES 实现,那问题就转换成如何将日志收集并存储到 ES

日志大家都不陌生了,可以在控制台打印,也可以存入文件,那能不能直接输入 ES 呢,好像没听说过。

这里就要用到 Logstash 来收集日志,Spring 默认的日志框架 Logback 已经对其提供了支持,我们要做的只是编写配置文件。

Logstash 有个问题就是非常占用内存,所以本文后面会介绍另一个比较轻量级的日志收集工具 FileBeat ,由 Go 语言编写。

同时对于真实的线上环境为了保证吞吐量和可靠性,都会引入 Kafka 进行解耦,本文不做演示。

下面就进入实战部分,搭建一套日志收集与搜索系统。

ES

推荐大家去 elastic 的中文社区下载 ELK ,速度会比较快,官网当然也是可以的。目前最新版本是8.+,推荐还是下 7.+ 比较稳妥,具体版本随意,但 ELK 的版本要一致。

本文使用 7.14.2 版本。下载下来解压就行,不废话。

 

修改配置文件

进入 config 目录:

# elasticsearch.yml

path.data: /Users/li/programs/elasticsearch-7.14.2/data
path.logs: /Users/li/programs/elasticsearch-7.14.2/logs
ingest.geoip.downloader.enabled: false
复制代码
# jvm.options
# 如果内存够用也可以不修改
-Xms1g
-Xmx1g
复制代码

启动

./bin/elasticsearch
复制代码
[2022-09-13T10:54:10,015][INFO ][o.e.n.Node               ] [LdeMacBook-Pro.mshome.net] started
[2022-09-13T10:54:10,730][INFO ][o.e.l.LicenseService     ] [LdeMacBook-Pro.mshome.net] license [b7a596e6-1b61-4e6d-af2f-7eab70fe693b] mode 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值