Class: Mnemosyne::Probes::Acfs::Request::Probe

Inherits:
Mnemosyne::Probe show all
Defined in:
lib/mnemosyne/probes/acfs/request.rb

Instance Method Summary collapse

Methods inherited from Mnemosyne::Probe

#install, subscribe, subscriptions

Instance Method Details

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



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/mnemosyne/probes/acfs/request.rb', line 16

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

  callers = caller

  callers.shift until callers[0].include? 'lib/acfs/global.rb:'

  meta = {
    backtrace: callers[1..-1]
  }

  span = ::Mnemosyne::Span.new 'external.run.acfs',
    start: start, finish: finish, meta: meta

  trace << span
end

#setup ⇒ Object



10
11
12
13
14
# File 'lib/mnemosyne/probes/acfs/request.rb', line 10

def setup
  require 'mnemosyne/middleware/acfs'

  ::Acfs::Runner.use ::Mnemosyne::Middleware::Acfs
end