Module: ScoutApm::Instruments::Typhoeus::TyphoeusInstrumentation
- Defined in:
- lib/scout_apm/instruments/typhoeus.rb
Instance Method Summary collapse
- #run(*args, &block) ⇒ Object
- #scout_desc(verb, uri) ⇒ Object
- #scout_request_url ⇒ Object
- #scout_request_verb ⇒ Object
Instance Method Details
#run(*args, &block) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/scout_apm/instruments/typhoeus.rb', line 51 def run(*args, &block) req = ScoutApm::RequestManager.lookup req.start_layer(ScoutApm::Layer.new("HTTP", scout_request_verb)) req.current_layer.desc = scout_desc(scout_request_verb, scout_request_url) begin super(*args, &block) ensure req.stop_layer end end |
#scout_desc(verb, uri) ⇒ Object
64 65 66 67 68 69 |
# File 'lib/scout_apm/instruments/typhoeus.rb', line 64 def scout_desc(verb, uri) max_length = ScoutApm::Agent.instance.context.config.value('instrument_http_url_length') (String(uri).split('?').first)[0..(max_length - 1)] rescue "" end |
#scout_request_url ⇒ Object
71 72 73 74 75 |
# File 'lib/scout_apm/instruments/typhoeus.rb', line 71 def scout_request_url self.url rescue "" end |
#scout_request_verb ⇒ Object
77 78 79 80 81 |
# File 'lib/scout_apm/instruments/typhoeus.rb', line 77 def scout_request_verb self.[:method].to_s rescue "" end |