- 22 Feb, 2019 1 commit
-
-
Andrew Newdigate authored
This approach is able to cope with `%` characters in the URL template, which is important since `%` is a valid URL character. Additionally this approach is less likely to fail on an invalid string. This is important since the distributed tracing infrastructure is designed to degrade gracefully when not properly configured, and a small mistake in the configuration of the URL template could have led to a production outage.
-
- 08 Feb, 2019 1 commit
-
-
Andrew Newdigate authored
Jaeger is a distributed tracing tool. This change adds a "Tracing" link to the performance bar to directly link to a current request in Jaeger. This is useful for two reasons: 1 - it provides affordance to developers that the distributed tracing tool is available, so that it can quickly be discovered. 2 - it allows developers to quickly find a specific trace without having to manually navigate to a second user-interface.
-
- 17 Jan, 2019 1 commit
-
-
Andrew Newdigate authored
This change will instantiate an OpenTracing tracer and configure it as the global tracer when the GITLAB_TRACING environment variable is configured. GITLAB_TRACING takes a "connection string"-like value, encapsulating the driver (eg jaeger, etc) and options for the driver. Since each service, whether it's written in Ruby or Golang, uses the same connection-string, it should be very easy to configure all services in a cluster, or even a single development machine to be setup to use tracing. Note that this change does not include instrumentation or propagation changes as this is a way of breaking a previous larger change into components. The instrumentation and propagation changes will follow in separate changes.
-