Module: TingYun::Instrumentation::Sinatra::Action

Includes:
TingYun::Instrumentation::Support::SplitController
Defined in:
lib/ting_yun/instrumentation/sinatra/action.rb

Constant Summary

Constants included from TingYun::Instrumentation::Support::SplitController

TingYun::Instrumentation::Support::SplitController::HTTP, TingYun::Instrumentation::Support::SplitController::RULE

Instance Attribute Summary

Attributes included from TingYun::Instrumentation::Support::SplitController

#rule, #tingyun_http_verb

Instance Method Summary collapse

Methods included from TingYun::Instrumentation::Support::SplitController

#dot_flattened, #find_rule, #method_match?, #name, #namespace, #params_match?, #raise_error, #rules, #split_header, #split_method, #split_params, #split_url, #url_match?

Instance Method Details

#tingyun_metric_path(current_class, path) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/ting_yun/instrumentation/sinatra/action.rb', line 12

def tingyun_metric_path(current_class, path)
  if find_rule(request.request_method.upcase, path, request.env, request.params)
    return "Sinatra/#{current_class}/#{namespace}/#{name(path.slice(1..-1), request.env, request.params, request.cookies)}"
  else
    return self.env["PATH_INFO"] unless TingYun::Agent.config[:'nbs.auto_action_naming']
    "Sinatra/#{current_class}/#{path}(#{request.request_method.upcase})".squeeze("/")
  end
end