java-spring-cloud
java-spring-cloud copied to clipboard
`uber-trace-id` from incoming request overwrites client span in spring cloud gateway tracing
Client span is generated here:
https://github.com/opentracing-contrib/java-spring-cloud/blob/8a865d560bf42b4bce839ba9a0977aecff3a4073/instrument-starters/opentracing-spring-cloud-gateway-starter/src/main/java/io/opentracing/contrib/spring/cloud/gateway/TraceRequestHttpHeadersFilter.java#L55-L60
Next we try to inject this span into Http Headers of inner request:
https://github.com/opentracing-contrib/java-spring-cloud/blob/8a865d560bf42b4bce839ba9a0977aecff3a4073/instrument-starters/opentracing-spring-cloud-gateway-starter/src/main/java/io/opentracing/contrib/spring/cloud/gateway/TraceRequestHttpHeadersFilter.java#L65-L70
But if the incoming request to Spring Cloud Gateway had it own uber-trace-id header this will overwrite what we just tried to do. Is it a bug?