The Gloo telemetry pipeline integrates with Jaeger as the tracing platform. Jaeger is an open source tool that helps you follow the path of a request as it is forwarded between microservices. The chain of events and interactions are then captured by the Gloo telemetry pipeline and visualized in the Jaeger UI that is embedded in the Gloo UI. You can use this data to troubleshoot issues in your microservices and identify bottlenecks. You can also forward the traces from the Gloo telemetry gateway to your own Jaeger tracing platform.

Before you begin

  1. Complete the multicluster getting started guide to set up the following testing environment.

    • Three clusters along with environment variables for the clusters and their Kubernetes contexts.
    • The Gloo meshctl CLI, along with other CLI tools such as kubectl and istioctl.
    • The Gloo management server in the management cluster, and the Gloo agents in the workload clusters.
    • Istio installed in the workload clusters.
    • A simple Gloo workspace setup.
  2. Install Bookinfo and other sample apps.

Step 1: Enable tracing in Istio

Instrument Istio workloads to collect traces by updating your Istio installation. The steps to update Istio vary depending on how you installed Istio.

Step 2: Enable the Jaeger UI and add traces to the pipeline

Now that your traces are enabled for Istio workloads, you can configure the Gloo telemetry pipeline to collect the traces and provide them to the built-in Jaeger instance that is embedded in to the Gloo UI or forward the traces to your own Jaeger tracing platform.

Use the built-in Jaeger

During your Gloo Mesh Enterprise installation, you can enable Jaeger as the tracing platform for your Gloo environment and embed the Jaeger UI in to the Gloo UI.

Bring your own Jaeger

Instead of using the built-in Jaeger instance, you can configure the Gloo UI to point to your Jaeger instance instead.

Step 3: Verify tracing

Open the Gloo UI and verify that traces are collected for your Istio workloads.

  1. Open the Gloo UI.

  2. From the menu, select Observability > Tracing and verify that the Jaeger UI opens.

    Figure: Jaeger UI
    Figure: Jaeger UI
  3. Send a few sample requests to your Istio workloads. Each request produces Istio traces that are sent to the Jaeger instance that you configured. For example, if you deployed the Bookinfo sample app from the Get started guide, use the following steps to produce traces.

    1. Port-forward the product page app.
        kubectl port-forward deployment/productpage-v1 -n bookinfo 9080
        
    2. Open the product page app.
    3. Refresh the page multiple times.
  4. Wait a few seconds and verify that traces are displayed in the Gloo UI.

    Figure: Product page traces
    Figure: Product page traces