Sha256: b1d9cc0785f783b6c9c6a748cc4396a20069de00c543761e4faebbd9204d0fad

Contents?: true

Size: 802 Bytes

Versions: 35

Compression:

Stored size: 802 Bytes

Contents

# encoding: utf-8
# This file is distributed under New Relic's license terms.
# See https://github.com/newrelic/rpm/blob/master/LICENSE for complete details.

DependencyDetection.defer do
  named :rubyprof

  depends_on do
    defined?(::RubyProf) && defined?(::NewRelic::Rack::DeveloperMode) && ::NewRelic::Agent.config[:developer_mode]
  end

  executes do
    NewRelic::Agent.instance.events.subscribe(:start_transaction) do
      if NewRelic::Rack::DeveloperMode.profiling_enabled?
        ::RubyProf.start
      end
    end

    NewRelic::Agent.instance.events.subscribe(:transaction_finished) do
      if NewRelic::Rack::DeveloperMode.profiling_enabled?
        trace = NewRelic::Agent::Transaction.tl_current.transaction_trace
        trace.profile = ::RubyProf.stop
      end
    end
  end
end

Version data entries

35 entries across 35 versions & 2 rubygems

Version Path
newrelic_rpm-4.0.0.332 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.18.1.330 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.18.0.329 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.17.2.327 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.17.1.326 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.17.0.325 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.16.3.323 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.16.2.321 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.16.1.320 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.16.0.318 lib/new_relic/agent/instrumentation/rubyprof.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.15.2.317/lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.15.2.317 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.15.1.316 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.15.0.314 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.14.3.313 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.14.2.312 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.14.1.311 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.14.0.305 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.13.2.302 lib/new_relic/agent/instrumentation/rubyprof.rb
newrelic_rpm-3.13.1.300 lib/new_relic/agent/instrumentation/rubyprof.rb