Conditionally initialize the global opentracing tracer
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.
显示
- Gemfile 6 个添加, 0 个删除Gemfile
- Gemfile.lock 7 个添加, 0 个删除Gemfile.lock
- changelogs/unreleased/an-opentracing-factory.yml 5 个添加, 0 个删除changelogs/unreleased/an-opentracing-factory.yml
- config/initializers/tracing.rb 13 个添加, 0 个删除config/initializers/tracing.rb
- lib/gitlab/tracing.rb 17 个添加, 0 个删除lib/gitlab/tracing.rb
- lib/gitlab/tracing/factory.rb 61 个添加, 0 个删除lib/gitlab/tracing/factory.rb
- lib/gitlab/tracing/jaeger_factory.rb 97 个添加, 0 个删除lib/gitlab/tracing/jaeger_factory.rb
- spec/lib/gitlab/tracing/factory_spec.rb 43 个添加, 0 个删除spec/lib/gitlab/tracing/factory_spec.rb
- spec/lib/gitlab/tracing/jaeger_factory_spec.rb 45 个添加, 0 个删除spec/lib/gitlab/tracing/jaeger_factory_spec.rb
加载中
想要评论请 注册 或 登录