Class: Fog::AWS::CloudWatch::Metrics
- Inherits:
-
Collection
- Object
- Collection
- Fog::AWS::CloudWatch::Metrics
- Defined in:
- lib/fog/aws/models/cloud_watch/metrics.rb
Instance Method Summary collapse
- #all(conditions = {}) ⇒ Object
- #each ⇒ Object
- #each_metric_this_page ⇒ Object
- #get(namespace, metric_name, dimensions = nil) ⇒ Object
Instance Method Details
#all(conditions = {}) ⇒ Object
12 13 14 15 16 |
# File 'lib/fog/aws/models/cloud_watch/metrics.rb', line 12 def all(conditions={}) result = service.list_metrics(conditions).body['ListMetricsResult'] merge_attributes("NextToken" => result["NextToken"]) load(result['Metrics']) # an array of attribute hashes end |
#each ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/fog/aws/models/cloud_watch/metrics.rb', line 19 def each if !block_given? self else subset = dup.all subset.each_metric_this_page {|m| yield m } while next_token = subset.next_token subset = subset.all("NextToken" => next_token) subset.each_metric_this_page {|m| yield m } end self end end |
#each_metric_this_page ⇒ Object
18 |
# File 'lib/fog/aws/models/cloud_watch/metrics.rb', line 18 alias_method :each_metric_this_page, :each |
#get(namespace, metric_name, dimensions = nil) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/fog/aws/models/cloud_watch/metrics.rb', line 35 def get(namespace, metric_name, dimensions=nil) list_opts = {'Namespace' => namespace, 'MetricName' => metric_name} if dimensions dimensions_array = dimensions.map do |name, value| {'Name' => name, 'Value' => value} end # list_opts.merge!('Dimensions' => dimensions_array) end if data = service.list_metrics(list_opts).body['ListMetricsResult']['Metrics'].first new(data) end end |