class ScoutApm::Instruments::Sinatra
Attributes
Public Instance Methods
Source
# File lib/scout_apm/instruments/sinatra.rb, line 9 def initalize(logger=ScoutApm::Agent.instance.context.logger) @logger = logger @installed = false end
Source
# File lib/scout_apm/instruments/sinatra.rb, line 18 def install(prepend:) if defined?(::Sinatra) && defined?(::Sinatra::Base) && ::Sinatra::Base.private_method_defined?(:dispatch!) @installed = true logger.info "Instrumenting Sinatra" ::Sinatra::Base.class_eval do include ScoutApm::Tracer include ScoutApm::Instruments::SinatraInstruments alias dispatch_without_scout_instruments! dispatch! alias dispatch! dispatch_with_scout_instruments! end end end
Source
# File lib/scout_apm/instruments/sinatra.rb, line 14 def installed? @installed end