【发布时间】:2017-06-08 23:27:21
【问题描述】:
Springboot 应用程序。
我正在使用 Brave v4,并且在将来不推荐使用 brave-core 模块时尽量不要使用它。使用 Brave v3,可以轻松传递当前跨度,因为它保留在线程中并由 Brave 类处理。
我正在使用 async-http-client 客户端,并且我创建了请求和响应过滤器,它们在标头之间传播以及启动和提交跨度。这一切都按预期工作。 async-http-client 池在启动时连接了侦听器,侦听器收到一个 TracingImpl ,它只是 Tracer 类的包装器,以便侦听器可以执行提交等(以及内部的跨度可以自己开始/完成)
例如,我的问题是:一个请求进入控制器,我从请求中提取 Span,现在我想使用 async-http-client 发出另一个请求,该请求将是传入请求的子请求。 我不确定我应该如何将我现在在控制器中的 Span 对象传递给它的 async-http-client 对象。 任何想法或帮助将不胜感激。
谢谢
【问题讨论】:
-
我应该补充一下,async-http-client 请求可能有几个层次,并且不希望通过层传递跨度对象。
标签: zipkin