Class: Instana::Activators::Dalli
Instance Method Summary
collapse
#call, call, inherited, start
Instance Method Details
#can_instrument? ⇒ Boolean
7
8
9
10
11
|
# File 'lib/instana/activators/dalli.rb', line 7
def can_instrument?
defined?(::Dalli::Protocol::Base || defined?(::Dalli::Server)) &&
defined?(::Dalli::Client) &&
Instana.config[:dalli][:enabled]
end
|
#instrument ⇒ Object
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/instana/activators/dalli.rb', line 13
def instrument
require 'instana/instrumentation/dalli'
dalli_version = Gem::Specification.find_by_name('dalli').version
::Dalli::Client.prepend ::Instana::Instrumentation::Dalli
if dalli_version < Gem::Version.new('3.0')
::Dalli::Server.prepend ::Instana::Instrumentation::DalliRequestHandler
elsif dalli_version >= Gem::Version.new('3.0') && dalli_version < Gem::Version.new('3.1.3')
::Dalli::Protocol::Binary.prepend ::Instana::Instrumentation::DalliRequestHandler
else
::Dalli::Protocol::Base.prepend ::Instana::Instrumentation::DalliRequestHandler
end
true
end
|