def subscribe(transaction_name, command_arguments={})
if self.class.is_resque?
NewRelic::Agent.logger.info("Backtracing threads on Resque is not supported, so not subscribing transaction '#{transaction_name}'")
return
end
if !self.class.is_supported?
NewRelic::Agent.logger.debug("Backtracing not supported, so not subscribing transaction '#{transaction_name}'")
return
end
NewRelic::Agent.logger.debug("Backtrace Service subscribing transaction '#{transaction_name}'")
profile = ThreadProfile.new(command_arguments)
@lock.synchronize do
@profiles[transaction_name] = profile
update_values_from_profiles
end
start
profile
end