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