spring-boot - 将来自 Spring Cloud Sleuth 的 TraceId 添加到 API Gateway 过滤器
问题描述
我有一个 API 网关和一个微服务。当从 Api 网关调用微服务时,它们都应该获得相同的 TraceID,但我的微服务有一个全新的 TraceID,我不知道它是在哪里生成的。
API 网关日志
2021-06-22 11:00:13.446 INFO [gateway, 3ad39a60c4ac0e95, 3ad39a60c4ac0e95] 776 [ctor-http-nio-2] c.m.c.u.config.APIRoutes Locator : Routes are
微服务日志
2021-06-22 11:00:34.285 INFO [service1, 2a758b1cb504ca75,62e0509ed861a50f, true] 556 [nio-8000-exec-5] c.m.c.u.service.MasterReport Service: Fetching latest business date
为了解决这个问题,我认为将 api 网关的 TraceID 添加到 HTTP 标头并将此标头添加到自定义 API 网关过滤器并将此过滤器添加到 API 网关将解决问题。但我不确定这是否是解决我的问题的正确方法,即使是,我也不知道该怎么做。任何代码片段或示例都会非常有帮助。
请让我知道我的方法是否正确以及是否存在
解决方案
推荐阅读
- node.js - NPM 如何处理与子/传递依赖的冲突
- postgresql - Docker Spring Boot Postgres 检查主机名和端口是否正确以及 postmaster 是否接受 TCP/IP 连接
- python - 如何使用 Python 将文件插入/上传到 Google Drive API v3 中的特定文件夹
- javascript - 使用空终止迭代javascript map.values() 迭代器是个坏主意吗?
- scala - 在 Akka Sharding 上启动时初始化实体
- android - 子模块测试中未解决的参考
- haproxy - HAProxy 到 Istio 入口
- python - 如果 x 是不可变的,命令“x is None”和“x == None”是否总是返回相同的结果?
- netlogo - 在 netlogo 中数海龟
- python - 在 python jupyter notebook 中连接到外部数据库时出现 SSL 证书验证错误