class Rabbitek::Server::Hooks::OpenTracing

OpenTracing server hook

Public Instance Methods

call(consumer, message) click to toggle source
Calls superclass method Rabbitek::ServerHook#call
# File lib/rabbitek/server/hooks/opentracing.rb, line 11
def call(consumer, message)
  response = nil

  ::OpenTracing.start_active_span(
    message.delivery_info.routing_key, opts(message.delivery_info, message.properties)
  ) do |scope|
    response = super
  rescue StandardError => e
    Utils::OpenTracing.log_error(scope.span, e)
    raise
  end

  response
end

Private Instance Methods

opts(delivery_info, properties) click to toggle source
# File lib/rabbitek/server/hooks/opentracing.rb, line 28
def opts(delivery_info, properties)
  Utils::OpenTracing.server_options(delivery_info, properties)
end