跳到主要内容

分布式追踪术语

在讨论和说明分布式追踪的过程中,使用了许多术语。这些术语中的许多是标准的 OpenTelemetry 术语;详情请参阅 https://opentelemetry.io/docs/concepts/。

追踪消息(Trace Message)

由事件代理发布的保证消息,包含 Solace Open Telemetry 接收器转换为一个或多个 跨度(spans) 的数据。

追踪(Trace)

包含相同追踪 ID 的 跨度(spans) 集合。同一追踪内的跨度通过 ParentSpanID 链接相互关联。

跨度(Span)

追踪(trace) 中的单个操作。跨度可以嵌套形成追踪树。每个追踪包含一个根跨度(通常描述整个操作)以及可选的,一个或多个子操作的子跨度。

跨度包括以下信息:

  • 跨度名称
  • 唯一标识跨度的追踪 ID 和跨度 ID
  • 父跨度 ID
  • 跨度种类(SpanKind)
  • 开始时间戳
  • 结束时间戳
  • 属性
  • 链接到其他跨度的列表
  • 带时间戳的事件列表
  • 状态

发送跨度(Send Spans)是事件代理生成的跨度,记录尝试传递消息的结果。接收跨度(Receive Spans)是事件代理在接收并持久化消息时生成的跨度。

跨度上下文(SpanContext)

在事件消息中携带的信息,允许跨度相互关联。SpanContext 中的一些或全部信息可能在创建跨度(即追踪消息)时被复制到跨度中。SpanContexts 是不可变的。SpanContext 包含多个字段,包括追踪 ID 和跨度 ID。有关分布式追踪的上下文传播,请参阅上下文传播。

追踪 ID(TraceID)

追踪的标识符。追踪 ID 由 16 个随机生成的字节组成,因此实际上是全局唯一的。追踪 ID 用于将所有进程中特定追踪的所有跨度组合在一起。

跨度 ID(SpanID)

跨度的标识符。当传递给子跨度时,此标识符成为子跨度的父跨度 ID。

遥测队列(Telemetry Queue)

仅用于遥测消息的特殊队列。每个消息 VPN 最多可以有一个遥测队列。

接收器(Receiver)

绑定到遥测队列并消费追踪消息的客户端。有关 Solace Open Telemetry 接收器,请参阅 Solace Open Telemetry 接收器。