SkyWalking 跨进程传播协议是用于上下文的传播,本文介绍的版本是3.0,也被称为为sw8
协议。
Header应该是上下文传播的最低要求。
sw8
.-
分隔的8个字段组成。Header值的长度应该小于2KB。Header值中具体包含以下8个字段:
.
分割的三个 long 类型值, 表示此追踪的唯一标识。上面的说明太干了,我们来举一个具体的例子,可以更好的理解。
有两个服务,分别叫onemore-a和 onemore-b,用户通过HTTP调用onemore-a的/onemore-a/get
,然后onemore-a的/onemore-a/get
又通过HTTP调用onemore-b的/onemore-b/get
,流程图就是这样的:
那么,我们在onemore-b的/onemore-b/get
的Header中就可以发现一个叫做sw8
的key,其值为:
1-YTRlYzZmYzhjY2FiNGJiNGI2ODIwNjQ2OThjYzk3ZTYuNzQuMTYyMTgzODExMDQ1NTAwMDk=-YTRlYzZmYzhjY2FiNGJiNGI2ODIwNjQ2OThjYzk3ZTYuNzQuMTYyMTgzODExMDQ1NTAwMDg=-2-b25lbW9yZS1h-ZTFkMmZiYjYzYmJhNDMwNDk5YWY4OTVjMDQwZTMyZmVAMTkyLjE2OC4xLjEwMQ==-L29uZW1vcmUtYS9nZXQ=-MTkyLjE2OC4xLjEwMjo4MA==
以-
字符进行分割,可以得到:
扩展Header项是为高级特性设计的,它提供了部署在上游和下游服务中的探针之间的交互功能。
sw8-x
-
分割,字段可扩展。当前值包括的字段: