[功能]:在依赖图中可视化未仪表化的服务
作者: yurishkuro创建于 2022年7月8日更新于 2026年9月15日
标签enhancementhelp wanted
需求
在依赖图中可视化服务,即使这些服务没有仪器,而是从呼叫方知道.
问题
当微量叶节点代表向无仪器服务发出的呼号时,这些服务没有在依赖图中显示(例如参见Zipkin在#3803中如何显示它们).
建议
Jaeger可以推断,当呼叫服务以span.kind=client'的标记记录某一个时,没有相应的span.kind=server'时,就存在一种现有的呼叫服务。
代码基础中有几个地方需要对此加以说明:
- 在全体人员使用的内存中(最容易开始)
- 用于生产用的Flink/Spark工作
除了改变图表逻辑外,另一种办法是微量浓缩,将人工的 " 服务器 " 跨度添加到微量中。 这样,图建逻辑就无需改变,所推断出节点也可以在单轨视图中显示.
- 未决问题
决定什么叫失踪的被调用者服务可能很棘手. 我们需要执行一种从客户端的标记中取出名字的弹性:
- 依据OpenTracing[语义公约](https://GitHub.com/OpenTracing/profitation/blob/master/semantic conventions.md)
- `服务'
- “先生地址”
peer.ip?' +peer.port'- 基于类似的OTEL语义公约。
OTEL曾讨论过对下游服务类型(如SQL db等)的标签,在命名衍生服务时也可考虑.
内容来源: jaegertracing/jaeger