Springboot app。
我正在使用Brave v4并尝试在将来弃用时不使用brave-core模块。使用Brave v3时,很容易绕过当前跨度,因为它保留在线程中并由Brave类处理。
我正在使用async-http-client客户端,并且我创建了请求和响应过滤器,这些过滤器传播到标头以及从标头传播以及启动和提交跨度。这一切都按预期工作。 async-http-client池在启动时与附加的侦听器连接,侦听器接收TracingImpl,它只是Tracer类的包装器,以便侦听器可以进行提交等(内部的跨距可以自己启动/完成)
我的问题是例如:一个请求进入控制器,我从请求中提取Span,现在我想使用async-http-client发出另一个请求,该请求将是进入的一个子进程。 我不确定如何将我现在在控制器中的Span对象提供给async-http-client对象。 任何想法或帮助将不胜感激。
由于
答案 0 :(得分:0)
目前,没有替代“线程活页夹”api。未来几个月会有。这确实需要翻新现有的仪器。
在此之前,您可以通过TracerAdapter重新使用线程绑定器,或使用不同的进程内传播库。以下链接包含一个工作示例https://github.com/openzipkin/brave/tree/master/brave#upgrading-from-brave-3