Class: Newrelic::Metrics
- Inherits:
-
Object
- Object
- Newrelic::Metrics
- Defined in:
- lib/scaltainer/newrelic/metrics.rb
Instance Method Summary collapse
- #get_avg_response_time(app_id, from, to) ⇒ Object
-
#initialize(license_key) ⇒ Metrics
constructor
A new instance of Metrics.
Constructor Details
#initialize(license_key) ⇒ Metrics
Returns a new instance of Metrics.
3 4 5 6 |
# File 'lib/scaltainer/newrelic/metrics.rb', line 3 def initialize(license_key) @headers = {"X-Api-Key" => license_key} @base_url = "https://api.newrelic.com/v2" end |
Instance Method Details
#get_avg_response_time(app_id, from, to) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/scaltainer/newrelic/metrics.rb', line 9 def get_avg_response_time(app_id, from, to) url = "#{@base_url}/applications/#{app_id}/metrics/data.json" conn = Excon.new(url, persistent: true, tcp_nodelay: true) time_range = "from=#{from.iso8601}&to=#{to.iso8601}" metric_names_array = %w( names[]=HttpDispatcher&values[]=average_call_time&values[]=call_count names[]=WebFrontend/QueueTime&values[]=call_count&values[]=average_response_time ) response_array = request(conn, metric_names_array, time_range) http_call_count, http_average_call_time = response_array[0]["call_count"], response_array[0]["average_call_time"] webfe_call_count, webfe_average_response_time = response_array[1]["call_count"], response_array[1]["average_response_time"] http_average_call_time + (1.0 * webfe_call_count * webfe_average_response_time / http_call_count) rescue 0.0/0 end |