Class: MonitoringMetric

Inherits:
Object
  • Object
show all
Extended by:
RightScale::Api::GatewayExtend
Includes:
RightScale::Api::Gateway
Defined in:
lib/rest_connection/rightscale/monitoring_metric.rb

Overview

API 1.5

Instance Attribute Summary

Attributes included from RightScale::Api::Base

#params

Class Method Summary collapse

Instance Method Summary collapse

Methods included from RightScale::Api::GatewayExtend

create, filters, find, find_all, find_by, find_with_filter, load, load_all, parse_args, resource_post_name

Methods included from RightScale::Api::GatewayConnection

#connection

Methods included from RightScale::Api::BaseExtend

#[], #create, #deny_methods, #filters, #find, #find_all, #find_by, #find_by_cloud_id, #find_by_id, #find_by_nickname, #find_by_nickname_speed, #find_with_filter, #resource_plural_name, #resource_singular_name

Methods included from RightScale::Api::BaseConnection

#connection

Methods included from RightScale::Api::Gateway

#[], #[]=, #actions, #hash_of_links, #href, #initialize, #load, #method_missing, #nickname, #parse_params, #rediscover, #save

Methods included from RightScale::Api::Base

#[], #[]=, #destroy, #initialize, #method_missing, #reload, #resource_plural_name, #resource_singular_name, #rs_id, #save

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class RightScale::Api::Gateway

Class Method Details

.filtersObject



37
38
39
# File 'lib/rest_connection/rightscale/monitoring_metric.rb', line 37

def self.filters
  [:plugin, :view]
end

.parse_args(cloud_id, instance_id) ⇒ Object



33
34
35
# File 'lib/rest_connection/rightscale/monitoring_metric.rb', line 33

def self.parse_args(cloud_id, instance_id)
  "clouds/#{cloud_id}/instances/#{instance_id}/"
end

Instance Method Details

#data(start_time = "-60", end_time = "0") ⇒ Object



41
42
43
44
45
46
47
48
# File 'lib/rest_connection/rightscale/monitoring_metric.rb', line 41

def data(start_time = "-60", end_time = "0")
  params = {'start' => start_time.to_s, 'end' => end_time.to_s}
  monitor = connection.get(URI.parse(self.href).path + "/data", params)
  # NOTE: The following is a dirty hack
  monitor['data'] = monitor['variables_data'].first
  monitor['data']['value'] = monitor['data']['points']
  monitor
end