Istio Operator (1.5) - External Jaeger - Enable Tracing?

I have everything in Istio working and the injected proxy sidecars work great.

I have enabled tracing against Jaeger (via Zipkin) using the operators profile and set traceSampling to 100:

  values:
    clusterResources: true
    global:
      mtls:
        auto: false
      proxy:
        tracer: zipkin
      tracer:
        zipkin:
          address: jaeger-collector.jaeger.svc.cluster.local:9412
    pilot:
      enableProtocolSniffingForInbound: false
      enableProtocolSniffingForOutbound: false
      traceSampling: 100

And I have exposed this port via the Kubernetes service here:

apiVersion: v1
kind: Service
metadata:
  name: jaeger-collector
  namespace: jaeger
...
spec:
  ports:
  - name: grpc
    port: 14250
    protocol: TCP
    targetPort: grpc
  - name: http
    port: 14268
    protocol: TCP
    targetPort: http
  - name: zipkin
    port: 9412
    protocol: TCP
    targetPort: zipkin

However, even though requests are coming through, I see no index data being written to Elasticsearch (my backend storage, external as well).

Does anyone have some pointers on how to configure or debug this? I can’t see if events are even being sent from Envoy -> Collector. Will debug enabled help?

Bumping - The distributed tracing for Istio implies that any enabled applications should at least create some span information that gets sent to Jager (with or without the headers).

How do I find out if Envoy is generating the spans from the request of the application?

Worth noting: The bookstore application does produce traces. So I’m not sure what I’m doing wrong.