Specify environment's jaeger as a part of CI/CD job

Problem to solve

Current status of Jaeger setup

It's possible to deploy application to different environments as a part of GitLab's CI/CD.

It's possible to setup GitLab to show information from Jaeger for production environment via GitLab web interface

Problem A: non-production tracing

Unfortunately sometimes it's not possible to allow non-production environment to send tracings to production's jaeger.

From the other side it may be very useful to review tracings for Staging/Review App/etc to understand root causes for the issues.

Problem B: custom Jaeger link per deployment

During deployment it's possible that Jaeger instance may migrate to different location/link. In that case User have to manually change link to the tracer via web site which limits speed of changes propagation to all project's team members and create possibility for incorrect tracer configuration due to required manual action.

Intended users

  • Users of Review App feature who are interested in traces for different environments (stage, Review App, etc.)
  • Users who would like to deploy Jaeger as a part of their project deploy

Further details

Proposal

  • add option to specify Jaeger per environment instead of per project
  • add option to provide a link to Jaeger as a part of CI/CD job (like it done for url and environment's name)

Permissions and Security

The same model which is used to setup environment's url as a part of CI/CD job

Documentation

.git-lab.ci reference doc

environment:jaeger_link

Provide a link to Jaeger server for the environment

Testing

TBD

What does success look like, and how can we measure that?

Metric: amount of project used the feature vs. amount of project with manual Jaeger setup via web site

Links / references

Edited Sep 02, 2020 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading