Class: Excon::Rails::Middleware

Inherits:
Middleware::Base
  • Object
show all
Defined in:
lib/excon/rails/middleware.rb

Overview

Middleware for tracking requests

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.installObject



8
9
10
11
12
# File 'lib/excon/rails/middleware.rb', line 8

def install
  index = ::Excon.defaults[:middlewares]
    .index(::Excon::Middleware::Instrumentor)
  ::Excon.defaults[:middlewares].insert(index || -1, self)
end

Instance Method Details

#error_call(datum) ⇒ Object



15
16
17
18
19
# File 'lib/excon/rails/middleware.rb', line 15

def error_call(datum)
  ActiveSupport::Notifications
    .instrument('error.excon', error: datum[:error])
  @stack.error_call(datum)
end

#request_call(datum) ⇒ Object



21
22
23
24
25
# File 'lib/excon/rails/middleware.rb', line 21

def request_call(datum)
  ActiveSupport::Notifications.instrument(event_name(datum), datum) do
    @stack.request_call(datum)
  end
end

#response_call(datum) ⇒ Object



27
28
29
30
31
# File 'lib/excon/rails/middleware.rb', line 27

def response_call(datum)
  ActiveSupport::Notifications
    .instrument('response.excon', datum[:response])
  @stack.response_call(datum)
end