lib/determinator/tracking.rb in determinator-2.4.0 vs lib/determinator/tracking.rb in determinator-2.4.2

- old
+ new

@@ -2,21 +2,23 @@ require 'determinator/tracking/context' module Determinator module Tracking class << self + attr_reader :endpoint_env_vars + def instance Thread.current[:determinator_tracker] end def start!(type) Thread.current[:determinator_tracker] = Tracker.new(type) end - def finish!(error:, **attributes) + def finish!(endpoint:, error:, **attributes) return false unless started? - request = instance.finish!(error: error, **attributes) + request = instance.finish!(endpoint: endpoint, error: error, **attributes) clear! report(request) request end @@ -54,9 +56,19 @@ end def clear_hooks! @on_request = nil @get_context = nil + end + + def endpoint_env_vars=(vars) + @endpoint_env_vars = Array(vars) + end + + def collect_endpoint_info(parts) + endpoint = Array(Determinator::Tracking.endpoint_env_vars).map{ |v| ENV[v] } + endpoint += Array(parts) + endpoint.reject{ |p| p.nil? || p == ''}.join(' ') end end end end