0

我想将request-foo服务(foo)中收到的标头值传播到header-bar服务(bar)的另一个标头。我想为此利用 sleuth/brave 仪器而不将其包含在业务逻辑中

foo-service --------> HTTP ------> bar-service (request-foo) (request-bar)

当标头名称匹配时,Sleuth 和 Brave 已经支持传播。例如通过foo-service以下设置

spring.sleuth.propagation-keys=request-foo

这会将request-foo标头值传播到bar-servicerequest-foo头名称。

不幸的是,就我而言,我无法控制bar-service它,它期望标头值作为request-bar并且也无法控制重命名request-foo标头名称,因为foo-service它也从上游服务接收它。

我想提供一个Injector类似于ExtraFieldInjector但不可扩展的ExtraFieldPropagation,所以我需要提供我自己的Propagation实现。

想知道我错过了什么吗?有没有更简单的方法?

谢谢你。

4

0 回答 0