从 1.5 开始搭建一个微服务框架——日志追踪 traceId

本文介绍了在微服务架构中如何解决日志追踪的问题。通过分析多条日志无法关联、跨服务日志关联、跨线程日志关联和第三方调用服务的追踪痛点,提出了使用 MDC 方案实现链路追踪。具体实现包括在 logback 中配置 %X{traceId},自定义拦截器获取并存储 traceId,以及在 OpenFeign 拦截器中传递 traceId 到跨服务调用。通过这种方式,可以实现全链路的 traceId 追踪,便于日志管理和调用链路分析。
摘要由CSDN通过智能技术生成

🚀 优质资源分享 🚀

学习路线指引(点击解锁) 知识定位 人群定位
🧡 Python实战微信订餐小程序 🧡 进阶级 本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
💛Python量化交易实战💛 入门级 手把手带你打造一个易扩展、更安全、效率更高的量化交易系统

原文首发:微信公众号,悟空聊架构,https://mp.weixin.qq.com/s/SDxH9k96aP5-X12yFtus0w

你好,我是悟空。

前言

最近在搭一个基础版的项目框架,基于 SpringCloud 微服务框架。

如果把 SpringCloud 这个框架当做 1,那么现在已经有的基础组件比如 swagger/logback 等等就是 0.5 ,然后我在这 1.5 基础上进行组装,完成一个微服务项目框架。

为什么要造二代轮子呢?市面上现成的项目框架不香吗?

因为项目组不允许用外部的现成框架,比如 Ruoyi。另外因为我们的项目需求具有自身的特色,技术选型也会选择我们自己熟悉的框架,所以自己来造二代轮子也是一个不错的选择。

核心功能

需要包含以下核心功能:

  • 多个微服务模块拆分,抽取出一个 demo 微服务模块供扩展,已完成
  • 提取核心框架模块,已完成
  • 注册中心 Eureka,已完成
  • 远程调用 OpenFeign,已完成
  • 日志 logback,包含 traceId 跟踪,已完成
  • Swagger API 文档,已完成
  • 配置文件共享,已完成
  • 日志检索,ELK Stack,已完成
  • 自定义 Starter,待定
  • 整合缓存 Redis,Redis 哨兵高
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值