Module: Instana::Instrumentation::ResqueClient
- Defined in:
- lib/instana/instrumentation/resque.rb
Class Method Summary collapse
Instance Method Summary collapse
- #collect_kvs(op, klass, args) ⇒ Object
- #dequeue_with_instana(klass, *args) ⇒ Object
- #enqueue_to_with_instana(queue, klass, *args) ⇒ Object
- #enqueue_with_instana(klass, *args) ⇒ Object
Class Method Details
.included(klass) ⇒ Object
6 7 8 9 10 11 |
# File 'lib/instana/instrumentation/resque.rb', line 6 def self.included(klass) klass.send :extend, ::Resque ::Instana::Util.method_alias(klass, :enqueue) ::Instana::Util.method_alias(klass, :enqueue_to) ::Instana::Util.method_alias(klass, :dequeue) end |
Instance Method Details
#collect_kvs(op, klass, args) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/instana/instrumentation/resque.rb', line 13 def collect_kvs(op, klass, args) kvs = {} begin kvs[:job] = klass.to_s kvs[:queue] = klass.instance_variable_get(:@queue) rescue => e Instana.logger.debug { "#{__method__}:#{File.basename(__FILE__)}:#{__LINE__}: #{e.}" } end { :'resque-client' => kvs } end |
#dequeue_with_instana(klass, *args) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/instana/instrumentation/resque.rb', line 51 def dequeue_with_instana(klass, *args) if Instana.tracer.tracing? kvs = collect_kvs(:dequeue, klass, args) Instana.tracer.trace(:'resque-client', kvs) do dequeue_without_instana(klass, *args) end else dequeue_without_instana(klass, *args) end end |
#enqueue_to_with_instana(queue, klass, *args) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/instana/instrumentation/resque.rb', line 38 def enqueue_to_with_instana(queue, klass, *args) if Instana.tracer.tracing? && !Instana.tracer.tracing_span?(:'resque-client') kvs = collect_kvs(:enqueue_to, klass, args) kvs[:Queue] = queue.to_s if queue Instana.tracer.trace(:'resque-client', kvs) do enqueue_to_without_instana(queue, klass, *args) end else enqueue_to_without_instana(queue, klass, *args) end end |
#enqueue_with_instana(klass, *args) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/instana/instrumentation/resque.rb', line 26 def enqueue_with_instana(klass, *args) if Instana.tracer.tracing? kvs = collect_kvs(:enqueue, klass, args) Instana.tracer.trace(:'resque-client', kvs) do enqueue_without_instana(klass, *args) end else enqueue_without_instana(klass, *args) end end |