- 欢迎使用 SkyWalking
- 观测分析语言 Observability Analysis Language, OAL
- 仪表系统
- 设计目标
- 为什么 SkyWalking 体系中没有使用 MQ?
- 探针简介
- 观测分析平台
- 可视化
- 选择接收器
- 服务自动打点代理
- 手动打点 SDK
- 服务网格探针
- SkyWalking Java 代理支持列表
- 设置
- 协议
- 作用域 Scopes 和字段 Fields
- 概念与设计
- Backend 启动
- Backend 存储
- 安装 Java agent
- Open Fetcher
- 概念与设计总览
- 设置开发环境
- 组件库设置
- 插件自动测试框架
- 使用命令行导出
- 操作名称分组规则
- Spring 注解插件
- Oracle 和 Resin 插件
- 支持忽略自定义的 trace
- 支持自定义增强
- 配置覆盖
- 支持传输层安全性协议(TLS)
- 命名空间
- 令牌认证
- 令牌认证
- 兼容 OpenTracing 的 Skywalking tracer
- 安装 log4j
- 安装 log4j2
- logback 插件
- 应用程序工具包跟踪
- 跨线程追踪
- 通过系统属性动态定义 agent 配置文件
- 插件开发指南
- 在 Kubernetes 中部署
- 通过 ALS 观测服务网格
- UI
- 与 Istio 协作
- 配置 Envoy 来向 SkyWalking 发送度量指标
- 快速入门
- V6 升级
- SkyWalking 跨进程传播的头部协议
- OAP server 支持 gPRC SSL 传输
- 贡献指南
- 数据存储扩展
- 启动模式
- 设置的覆盖
- IP 和端口设置
- 初始化模式
- 集群管理
- 服务器端的跟踪采样
- 慢 SQL 语句设置
- 官方 OAL 脚本
- 告警
- 高级部署
- Metrics Exporter
- TTL
- 动态配置
- 无法打点的网关/代理
- 应用性能指数
- 端点分组参数化
- 后台遥测数据
- Apache SkyWalking 代码提交者
- 如何构建项目
- 新度量指标的源和范围扩展
- 后端存储实体扩展
- 线程转储归并机制
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
SkyWalking 跨进程传播的头部协议
SkyWalking 跨进程传播的头部协议
- 版本 3.0
SkyWalking 更像是一个 APM 系统, 而不是通用的分布式跟踪系统. 为了提高OAP的分析性能,头文件要比它们复杂得多. 您可以在其他商业APM系统中找到许多类似的机制。(有些甚至比我们的更复杂)
摘要
SkyWalking 跨进程传播的头部协议版本 3.0 也被命名为sw8协议,用于上下文传播.
标准头部项
标准标头应该是上下文传播的最低要求.
- 头部名称:
sw8
. - 头部值: 8 个字段,由
-
分割. 头部值的最大长度(默认)应该小于 2k.
值格式示例, XXXXX-XXXXX-XXXX-XXXX
值
头部值包含以下段, 所有字符串类型的值都是 BASE64 编码的.
- 必须项(s)
- 采样(Sample). 0 或 1. 0 表示上下文存在, 但是可以(也很可能)忽略. 1 表示此追踪需要采样并发送到后端.
- 追踪标识(Trace Id). 字符串(BASE64 编码). 由 . 分割的三个 long 类型值, 表示此追踪的唯一标识.
- 父追踪段 ID(Parent trace segment Id). 字符串(BASE64 编码). 字符串且全局唯一.
- 父 Span 标识. 整数. 从 0 开始. 此 Span ID 指向了父追踪段中的 Span.
- 父服务. 字符串(BASE64 编码). 长度不应小于或等于50个UTF-8编码的字符.
- 父服务实例标识. 字符串(BASE64 编码). 长度不应小于或等于50个UTF-8编码的字符.
- 父服务的端点. 字符串(BASE64 编码). 父追踪段中第一个入口span的操作名. 长度不应小于或等于50个UTF-8编码的字符.
- 本请求的目标地址. 字符串(BASE64 编码). 客户端用于访问目标服务的网络地址(不一定是 IP + 端口).
- 示例,
1-TRACEID-SEGMENTID-3-PARENT_SERVICE-PARENT_INSTANCE-PARENT_ENDPOINT-IPPORT
扩展头部项
扩展头部项是为高级特性设计的. 它提供了部署在上游和下游服务中的代理之间的交互功能。
- 头部名称:
sw8-x
- 头部值: 由
-
分割. 字段可扩展.
值
当前值包括的字段.
- 追踪模式. 空,0或1。默认为空或0。表示在这个上下文中生成的所有span应该跳过分析,
spanObject#skipAnalysis=true
。这个上下文应该在默认情况下传播到上游,除非它在跟踪过程中被更改.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论