Sha256: e67859475894552b7dd36b4d7534e50bc4ccb3ae08eb9d4cbeb35566d0a67358

Contents?: true

Size: 1000 Bytes

Versions: 3

Compression:

Stored size: 1000 Bytes

Contents

class NewRelic::MetricParser::Apdex < NewRelic::MetricParser
  
  CLIENT = 'Client'
  
  # Convenience method for creating the appropriate client
  # metric name.
  def self.client_metric(apdex_t)
    "Apdex/#{CLIENT}/#{apdex_t}"
  end
  
  def is_client?
    segments[1] == CLIENT
  end
  def is_summary?
    segments.size == 1
  end
  
  # Apdex/Client/N
  def apdex_t
    is_client? && segments[2].to_f
  end
  
  def developer_name
    case
      when is_client? then "Apdex Client (#{apdex_t})"
      when is_summary? then "Apdex"
      else "Apdex #{segments[1..-1].join("/")}"
    end
  end
  
  def short_name
    # standard controller actions
    if segments.length > 1
      url
    else
      'All Frontend Urls'
    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

3 entries across 3 versions & 1 rubygems

Version Path
newrelic_rpm-2.13.0.beta5 lib/new_relic/metric_parser/apdex.rb
newrelic_rpm-2.13.0.beta4 lib/new_relic/metric_parser/apdex.rb
newrelic_rpm-2.13.0.beta3 lib/new_relic/metric_parser/apdex.rb