# File lib/new_relic/agent/method_tracer_helpers.rb, line 69 def trace_execution_scoped(metric_names, options={}) #THREAD_LOCAL_ACCESS state = NewRelic::Agent::TransactionState.tl_get return yield unless state.is_execution_traced? metric_names = Array(metric_names) first_name = metric_names.shift return yield unless first_name segment = NewRelic::Agent::Transaction.start_segment first_name, metric_names if options[:metric] == false segment.record_metrics = false end begin yield ensure segment.finish end end