Java 打开跟踪:将多个TraceID链接到一个跟踪中
有没有办法将具有不同跟踪ID的多个跟踪连接到一个跟踪中?在我的例子中,我有下面这样的东西,我想把它们合并成一个单一的跟踪Java 打开跟踪:将多个TraceID链接到一个跟踪中,java,opentracing,Java,Opentracing,有没有办法将具有不同跟踪ID的多个跟踪连接到一个跟踪中?在我的例子中,我有下面这样的东西,我想把它们合并成一个单一的跟踪 |--- UI Trace ---------------------------------| |- UI Span -| |-- Backend Trace -----------| |- Backend Span --| |--| 是的,我可以重构,使我的后端跟踪位于UI跟踪中。但我正在
|--- UI Trace ---------------------------------|
|- UI Span -|
|-- Backend Trace -----------|
|- Backend Span --| |--|
是的,我可以重构,使我的
后端跟踪
位于UI跟踪
中。但我正在使用一些现有代码,其中后端服务已经通过http头为每个请求传递了一个ID。我想重新使用现有的后端ID,而不是向所有现有请求添加新的跟踪ID头。一般来说,按照您描述的方式“加入跟踪”将是跟踪分析器(Jaeger、LightStep等)的一部分,我不相信它们中的任何一个都允许这种查询TraceID
只是分析器将不同跨度关联到单个逻辑跟踪中的一种方法
解决这一问题的一些选项如下-
SpanContext
跟踪id,假设您的后端也会传播它(如果它被提供给它)SpanContext
。您不必向下传递未完成或格式不正确的跨距,只需将所需的数据段沿线路发送到后端,然后在该点为UI创建新的跨距即可无法在UI端生成我们的ID。但是,看起来LightStep确实有办法解决与旧系统集成的问题: