How to use jaeger-debug-id HTTP header with Istio tracing?

I have some gRPC apps running on Kubernetes with Istio, and have recently added Jaeger tracing following the docs

Tracing and sampling works as expected except for one thing.

I read in the book by Yuri Shkuro and on Github (jaeger-client-go#debug-traces-forced-sampling) that we can set a header jaeger-debug-id to force sampling. This is not working for me and I cannot find any mention of this header in the istio-jaeger documentation.

Are there any known reasons why this header would not work, or anything that needs to be changed when using Jaeger with Istio, for it to work?

Istio uses the Envoy proxy configured with the Zipkin tracer, which uses B3 context propagation. Therefore Envoy does not understand the Jaeger headers.

One way to force sampling of a request would be to use header x-b3-sampled: 1.

This works. Thanks a lot!