Class: Aws::CloudWatch::Resource
- Inherits:
-
Object
- Object
- Aws::CloudWatch::Resource
- Defined in:
- gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb
Overview
This class provides a resource oriented interface for CloudWatch. To create a resource object:
resource = Aws::CloudWatch::Resource.new(region: 'us-west-2')
You can supply a client object with custom configuration that will be used for all resource operations.
If you do not pass :client
, a default client will be constructed.
client = Aws::CloudWatch::Client.new(region: 'us-west-2')
resource = Aws::CloudWatch::Resource.new(client: client)
Associations collapse
-
#alarm(name) ⇒ Alarm
-
#alarms(options = {}) ⇒ Alarm::Collection
-
#composite_alarm(name) ⇒ CompositeAlarm
-
#composite_alarms(options = {}) ⇒ CompositeAlarm::Collection
-
#metric(namespace, name) ⇒ Metric
-
#metrics(options = {}) ⇒ Metric::Collection
Instance Method Summary collapse
-
#client ⇒ Client
-
#initialize(options = {}) ⇒ Resource
constructor
A new instance of Resource.
Constructor Details
Instance Method Details
#alarm(name) ⇒ Alarm
40 41 42 43 44 45 |
# File 'gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb', line 40 def alarm(name) Alarm.new( name: name, client: @client ) end |
#alarms(options = {}) ⇒ Alarm::Collection
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 |
# File 'gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb', line 126 def alarms( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_alarms() end resp.each_page do |page| batch = [] page.data.metric_alarms.each do |m| batch << Alarm.new( name: m.alarm_name, data: m, client: @client ) end y.yield(batch) end end Alarm::Collection.new(batches) end |
#client ⇒ Client
32 33 34 |
# File 'gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb', line 32 def client @client end |
#composite_alarm(name) ⇒ CompositeAlarm
148 149 150 151 152 153 |
# File 'gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb', line 148 def composite_alarm(name) CompositeAlarm.new( name: name, client: @client ) end |
#composite_alarms(options = {}) ⇒ CompositeAlarm::Collection
234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 |
# File 'gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb', line 234 def composite_alarms( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.describe_alarms() end resp.each_page do |page| batch = [] page.data.composite_alarms.each do |c| batch << CompositeAlarm.new( name: c.alarm_name, data: c, client: @client ) end y.yield(batch) end end CompositeAlarm::Collection.new(batches) end |
#metric(namespace, name) ⇒ Metric
257 258 259 260 261 262 263 |
# File 'gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb', line 257 def metric(namespace, name) Metric.new( namespace: namespace, name: name, client: @client ) end |
#metrics(options = {}) ⇒ Metric::Collection
310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 |
# File 'gems/aws-sdk-cloudwatch/lib/aws-sdk-cloudwatch/resource.rb', line 310 def metrics( = {}) batches = Enumerator.new do |y| resp = Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do @client.list_metrics() end resp.each_page do |page| batch = [] page.data.metrics.each do |m| batch << Metric.new( namespace: m.namespace, name: m.metric_name, data: m, client: @client ) end y.yield(batch) end end Metric::Collection.new(batches) end |