6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/mnemosyne/middleware/restify.rb', line 6
def call(request)
if (trace = ::Mnemosyne::Instrumenter.current_trace)
meta = {url: request.uri.to_s, method: request.method}
span = ::Mnemosyne::Span.new('external.http.restify', meta: meta)
span.start!
request.['X-Mnemosyne-Transaction'] = trace.transaction
request.['X-Mnemosyne-Origin'] = span.uuid
super.tap do |x|
x.add_observer do |_, _response, _err|
span.finish!
trace << span
end
end
else
super
end
end
|