Module: BrainzLab::Instrumentation::TyphoeusInstrumentation::HydraInstrumentation
- Defined in:
- lib/brainzlab/instrumentation/typhoeus.rb
Overview
Hydra instrumentation for parallel requests
Class Method Summary collapse
Class Method Details
.install! ⇒ Object
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
# File 'lib/brainzlab/instrumentation/typhoeus.rb', line 80 def self.install! return unless defined?(::Typhoeus::Hydra) ::Typhoeus::Hydra.class_eval do alias_method :original_run, :run def run started_at = Time.now request_count = queued_requests.size result = original_run duration_ms = ((Time.now - started_at) * 1000).round(2) if BrainzLab.configuration.flux_effectively_enabled? BrainzLab::Flux.distribution('http.typhoeus.hydra.duration_ms', duration_ms) BrainzLab::Flux.distribution('http.typhoeus.hydra.request_count', request_count) end result end end end |