Sha256: 7d2abb5d047debf1f4561a7268c8bb793a2af4ee43f72ba4e19383be86bb9009

Contents?: true

Size: 1 KB

Versions: 5

Compression:

Stored size: 1 KB

Contents

class NewRelic::MetricParser::Controller < NewRelic::MetricParser
  
  def is_controller?
    true
  end
  
  def controller_name
    segments[1..-2].join('/').camelize+"Controller"
  end

  def action_name
    if segments[-1] =~ /^\(other\)$/
      '(template only)'
    else
      segments[-1]
    end
  end
  
  def developer_name
    "#{controller_name}##{action_name}"
  end
  
  # return the cpu measuring equivalent.  It may be nil since this metric was not
  # present in earlier versions of the agent.
  def cpu_metric
    Metric.lookup((["ControllerCPU"] + segments[1..-1]).join('/'), :create => false)
  end
  
  def short_name
    # standard controller actions
    if segments.length > 1
      url
    else
      'All Controller Actions'
    end
  end
  
  def url
    '/' + segments[1..-1].join('/')
  end
  
  # this is used to match transaction traces to controller actions.  
  # TT's don't have a preceding slash :P
  def tt_path
    segments[1..-1].join('/')
  end

  def call_rate_suffix
    'rpm'
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
newrelic_rpm-2.9.9 lib/new_relic/metric_parser/controller.rb
newrelic_rpm-2.9.8 lib/new_relic/metric_parser/controller.rb
newrelic_rpm-2.9.6 lib/new_relic/metric_parser/controller.rb
newrelic_rpm-2.9.5 lib/new_relic/metric_parser/controller.rb
newrelic_rpm-2.9.4 lib/new_relic/metric_parser/controller.rb