Class: Mnemosyne::Probes::Grape::EndpointRun::Probe

Inherits:
Mnemosyne::Probe show all
Defined in:
lib/mnemosyne/probes/grape/endpoint_run.rb

Instance Method Summary collapse

Methods inherited from Mnemosyne::Probe

#install, #setup, subscribe, subscriptions

Methods included from Logging

#logger

Instance Method Details

#call(trace, _name, start, finish, _id, payload) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/mnemosyne/probes/grape/endpoint_run.rb', line 10

def call(trace, _name, start, finish, _id, payload)
  start  = ::Mnemosyne::Clock.to_tick(start)
  finish = ::Mnemosyne::Clock.to_tick(finish)

  endpoint = payload[:endpoint]
  return unless endpoint

  meta = {
    endpoint: extract_name(endpoint),
    format: extract_format(payload[:env])
  }

  span = ::Mnemosyne::Span.new 'app.controller.request.grape',
    start: start, finish: finish, meta: meta

  trace << span
end