分布式链路追踪(Distributed Tracing)TraceID vs SpanID
在分布式服务中,TraceID和SpanID是分布式链路追踪(Distributed Tracing)的两个核心标识。它们的关系可以概括为:
- TraceID:标识一次完整的请求链路。
- SpanID:标识这次请求链路中的一个具体操作或调用阶段。
- 一个Trace包含多个Span,这些Span通过父子关系串联起来。
核心字段对比
| 字段 | 含义 | 作用 |
|---|---|---|
TraceID |
链路ID | 将同一次请求的所有Span关联起来 |
SpanID |
当前操作ID | 唯一标识一个Span |
ParentSpanID |
父操作ID | 表示当前Span由哪个Span触发 |
在OpenTelemetry中,TraceID通常为16字节(32位十六进制字符),SpanID通常为8字节(16位十六进制字符)。