lib/instana/activator.rb in instana-1.210.1 vs lib/instana/activator.rb in instana-1.211.0

- old
+ new

@@ -41,18 +41,29 @@ instrument if can_instrument? end end end -Dir["#{__dir__}/activators/*.rb"] - .sort - .select do |f| - # :nocov: +DIRECTORY_OF_ACTIVATORS = "#{__dir__}/activators/".freeze + +def activated_set + all_activators = Set.new( + Dir["*.rb", base: DIRECTORY_OF_ACTIVATORS].map do |f| + File.basename(f, '.rb') + end + ) + if ENV['INSTANA_ACTIVATE_SET'] - base = File.basename(f, '.rb') - ENV.fetch('INSTANA_ACTIVATE_SET', '').split(',').include?(base) + selected_activators = Set.new(ENV.fetch('INSTANA_ACTIVATE_SET', '').split(',')) + all_activators & selected_activators else - true + all_activators end - # :nocov: end - .each { |f| require(f) } + +def require_selected_activator_files + activated_set.each do |f| + require("#{DIRECTORY_OF_ACTIVATORS}#{f}.rb") + end +end + +require_selected_activator_files