为何Activity.Id存在前导双0与末尾01?附W3C Trace ID疑问
问题
该输出始终带有前导双00与末尾01,请问这两部分分别代表什么含义?另外,其中的trace id为bbd8c75b04cda7f7fe9ee03b54b2d7ba,根据W3C格式规范,trace-id应为16字节,但该字符串有32个字符,是否意味着它是32字节?
解答
前导00与末尾01的含义
- 前导
00:这是W3C Trace Context规范定义的版本标识,当前规范的版本就是00,所以会固定显示这个值。 - 末尾
01:这是采样标记,01代表当前请求会被纳入追踪采样范围;如果是00则表示不采样。你的代码默认开启了采样,所以显示01。
Trace ID的字节数说明
这个32字符的Trace ID并不是32字节,它刚好对应16字节——因为每个字节会用两个十六进制字符来表示(比如bb是一个字节,d8是另一个字节)。32个十六进制字符换算下来就是16字节,完全符合W3C规范对Trace ID的要求。
内容的提问来源于stack exchange,提问作者user22155685
相关产品推荐
相关产品推荐

