腾讯mini项目-【指标监控服务重构】2023-08-06

今日已办

feature/client_traces_profile

  • 修改 consumer 4个阶段的 spankind
  • 将 profile 的 span 作为 root span,保持与 venus 的 follows from 的 link

feature/profile-otelclient-metric

  • 将 metric 部分使用新分支 push

go.opentelemetry.io/otel/propagation

在 OpenTelemetry 中,Baggage(行李)和 TraceContext(跟踪上下文)是两个不同的概念,用于在分布式系统中传递附加的上下文信息。它们的区别在于它们的作用和使用方式。

  1. TraceContext(跟踪上下文)Trace Context (w3.org)
    • TraceContext 是 OpenTelemetry 规范中定义的一种传播和表示跟踪信息的规范。
    • TraceContext 用于跟踪和关联分布式系统中的操作和事件,包括跟踪标识符(trace ID)和跨度标识符(span ID)等关键信息。
    • TraceContext 通过 traceparenttracestate 等标头来在不同的组件之间传递和恢复跟踪信息。
    • TraceContext 旨在提供一种标准的跟踪上下文传播机制,以实现跨系统的跟踪和分析。
  2. Baggage(行李)Propagation format for distributed context: Baggage (w3.org)
    • Baggage 是 OpenTelemetry 中用于传递附加上下文信息的概念。
    • Baggage 允许开发人员在分布式系统中传递和关联与跟踪相关的键值对信息,这些信息可以是业务上的附加信息,例如用户标识、订单号等。
    • Baggage 的设计目的是将附加的上下文信息与跟踪信息一起传播,以提供更丰富的上下文和语义。
    • Baggage 通过 tracestate 标头来在跟踪上下文中传递和关联键值对信息。

总结:

TraceContext 是 OpenTelemetry 规范中定义的一种传播和表示跟踪信息的规范,它包括 trace ID 和 span ID 等关键信息,用于在分布式系统中实现跟踪和分析。而 Baggage 则是一种附加的上下文信息的传递机制,允许将业务相关的键值对信息与跟踪信息一起传播,以提供更丰富的上下文和语义。两者可以结合使用,以满足分布式系统中的不同需求。

明日待办

相关推荐
tyung6 小时前
Go 手写 Wait-Free MPSC 无界队列:SwapPointer 实现多生产者无锁入队
后端·go
陈明勇13 小时前
Go 1.26 新特性回顾:语言增强、工具升级与 Green Tea GC 默认启用
后端·go
妙码生花1 天前
从 PHP 到 AI + Golang,程序员自救转型手记(二):目录结构、初始化 GIT、设计并开发配置系统
前端·后端·go
leeyi1 天前
Deer-Go:字节 Deer-Flow 的 Go 移植,深度研究 Agent 全拆解
go·aigc·agent
Bolt2 天前
TypeScript 7.0 来了:当 tsc 用 Go 重写之后
javascript·typescript·go
Go_error2 天前
Datatypes:Go 轻松支持数据库JSON类型
后端·go
任沫3 天前
Agent之Function Call
javascript·人工智能·go
唐青枫4 天前
别再把 interface 当万能盒子:Go 接口从隐式实现到项目解耦
go
tyung6 天前
Go 手写有界 SPSC 环形队列:无 CAS、无锁、Cache 友好的无锁模型
后端·go
喵个咪6 天前
技术复盘:基于 go-wind-cms 的官网+商城双业务渐进拆分实战
后端·架构·go