Introduced in GitLab Ultimate 11.5.

Tracing provides insight into the performance and health of a deployed application, tracking each function or microservice which handles a given request.

This makes it easy to understand the end-to-end flow of a request, regardless of whether you are using a monolithic or distributed system.

Jaeger tracing

Jaeger is an open source, end-to-end distributed tracing system used for monitoring and troubleshooting microservices-based distributed systems.

Deploying Jaeger

To learn more about deploying Jaeger, read the official Getting Started documentation. There is an easy to use all-in-one Docker image, as well as deployment options for Kubernetes and OpenShift.

Enabling Jaeger

GitLab provides an easy way to open the Jaeger UI from within your project:

  1. Set up Jaeger and configure your application using one of the client libraries.
  2. Navigate to your project’s Settings > Operations and provide the Jaeger URL.
  3. Click Save changes for the changes to take effect.
  4. You can now visit Operations > Tracing in your project’s sidebar and GitLab will redirect you to the configured Jaeger URL.