链路追踪
链路追踪
inpoint 实践
- 需要为每一个组件生成一个 component id
- 对于每一个 http 请求生成一个唯一的 request id,并且通过线程局部变量(ThreadLocal)传递下去
- 对于请求内新起来的线程,需要修改线程创建类,把 request id 继续传递下去
- 对于请求内产生的 rpc 调用,需要修改请求端代码,把 request id 信息带入 header,并在接收端解析这个 header 注入到线程本地变量
- 每次调用到一个组件(component),就使用 (request id, component id) 组合记录一个 Trace Log