腾讯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 通过 traceparent 和 tracestate 等标头来在不同的组件之间传递和恢复跟踪信息。
    • TraceContext 旨在提供一种标准的跟踪上下文传播机制,以实现跨系统的跟踪和分析。
  2. Baggage(行李)Propagation format for distributed context: Baggage (w3.org):
    • Baggage 是 OpenTelemetry 中用于传递附加上下文信息的概念。
    • Baggage 允许开发人员在分布式系统中传递和关联与跟踪相关的键值对信息,这些信息可以是业务上的附加信息,例如用户标识、订单号等。
    • Baggage 的设计目的是将附加的上下文信息与跟踪信息一起传播,以提供更丰富的上下文和语义。
    • Baggage 通过 tracestate 标头来在跟踪上下文中传递和关联键值对信息。

总结:

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

明日待办

相关推荐
我的div丢了肿么办几秒前
自定义类型和类型别名以及实例化结构体的5种方式
后端·go
小满zs几秒前
Go语言第十三章(互斥锁,读写锁)
后端·go
福兮说2 分钟前
errgroup 的六个坑:Wait 之后 ctx 已取消、SetLimit 嵌套死锁,以及另外四个
后端·go
福兮说7 分钟前
Go 解析邮件的三个坑:GBK 标题、QP 正文,以及 NextPart 偷偷帮你做的事
后端·go
我的div丢了肿么办8 分钟前
go语言中的时间time
后端·go
沙蒿同学18 分钟前
一个人做完一套企业级系统,赚到了第一个 1000 块
vue.js·后端·go
福兮说23 分钟前
用 Go 从零写一个只收信的 SMTP 服务:协议、坑和上线前要想清楚的事
go
newerp25 分钟前
GC 触发时机与调优
后端·程序员·go
探索云原生37 分钟前
一个 Deployment 就能跑 vLLM,为什么还需要 KServe?
docker·ai·云原生·kubernetes·go
alsmile5 天前
Node-RED 之外,国产规则引擎的新方案:基于标准语法,Go 先行实现
后端·开源·go