class Sqreen::Ecosystem::TracingIdSetup

Attributes

tracing_id_prefix[W]

Public Class Methods

new(signal_producer_modules) click to toggle source

@param [Array<Sqreen::Ecosystem::ModuleApi::SignalProducer>] signal_producer_modules

# File lib/sqreen/ecosystem/tracing_id_setup.rb, line 14
def initialize(signal_producer_modules)
  @modules = signal_producer_modules
  @tracing_id_prefix = nil
end

Public Instance Methods

setup_modules() click to toggle source
# File lib/sqreen/ecosystem/tracing_id_setup.rb, line 19
def setup_modules
  inject_out_of_tx_tracing_id_gen
end

Private Instance Methods

generate_tracing_id() click to toggle source
# File lib/sqreen/ecosystem/tracing_id_setup.rb, line 33
def generate_tracing_id
  return nil unless @tracing_id_prefix
  "#{@tracing_id_prefix}.#{SecureRandom.uuid}"
end
inject_out_of_tx_tracing_id_gen() click to toggle source
# File lib/sqreen/ecosystem/tracing_id_setup.rb, line 27
def inject_out_of_tx_tracing_id_gen
  @modules.each do |mod|
    mod.tracing_id_producer = method(:generate_tracing_id)
  end
end