Forwarding Tanzu Service Mesh Distributed Traces to Wavefront
· 3 min read
Distributed traces from Tanzu Service Mesh can be forwarded to Wavefront.
Introduction
Tanzu Service Mesh (TSM from here on) is a customized Istio offered by VMware. Once installed, it builds a service map like this:

By default, however, this tracing data cannot be shared with other systems. Fortunately a small configuration change makes it possible. This post shows how to send the tracing data to Tanzu Observability (Wavefront).
Caution
This is not an officially supported procedure, so proceed at your own risk.
Steps
First, edit the istio ConfigMap.
kubectl edit cm istio -n istio-system
Find the following entry and change it from false to true.
enableTracing: true
Next, edit the istio-pilot Deployment.
kubectl edit deploy -n istio-system istio-pilot
Find the following entry and change the value from 1 to 100.
- name: PILOT_TRACE_SAMPLING
value: "100"
Finally, define a Zipkin service as shown below.
Set wavefront-proxy.wavefront.svc.cluster.local to the URL where your Wavefront Proxy is running.
apiVersion: v1
kind: Service
metadata:
name: zipkin
namespace: istio-system
spec:
type: ExternalName
externalName: wavefront-proxy.wavefront.svc.cluster.local
That's all.
Result
If everything is configured correctly, you can see the traces in Wavefront like this:

Strictly speaking, this will not match exactly what TSM shows, because the collection mechanisms differ.
Summary
Forwarding TSM traces to an external system is easy.