aws-sdk-cloudwatch 0.0.6 → 1.0.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1024 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module CloudWatch
10
+ module Types
11
+
12
+ # Represents the history of a specific alarm.
13
+ # @!attribute [rw] alarm_name
14
+ # The descriptive name for the alarm.
15
+ # @return [String]
16
+ #
17
+ # @!attribute [rw] timestamp
18
+ # The time stamp for the alarm history item.
19
+ # @return [Time]
20
+ #
21
+ # @!attribute [rw] history_item_type
22
+ # The type of alarm history item.
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] history_summary
26
+ # A summary of the alarm history, in text format.
27
+ # @return [String]
28
+ #
29
+ # @!attribute [rw] history_data
30
+ # Data about the alarm, in JSON format.
31
+ # @return [String]
32
+ class AlarmHistoryItem < Struct.new(
33
+ :alarm_name,
34
+ :timestamp,
35
+ :history_item_type,
36
+ :history_summary,
37
+ :history_data)
38
+ include Aws::Structure
39
+ end
40
+
41
+ # Encapsulates the statistical data that Amazon CloudWatch computes from
42
+ # metric data.
43
+ # @!attribute [rw] timestamp
44
+ # The time stamp used for the data point.
45
+ # @return [Time]
46
+ #
47
+ # @!attribute [rw] sample_count
48
+ # The number of metric values that contributed to the aggregate value
49
+ # of this data point.
50
+ # @return [Float]
51
+ #
52
+ # @!attribute [rw] average
53
+ # The average of the metric values that correspond to the data point.
54
+ # @return [Float]
55
+ #
56
+ # @!attribute [rw] sum
57
+ # The sum of the metric values for the data point.
58
+ # @return [Float]
59
+ #
60
+ # @!attribute [rw] minimum
61
+ # The minimum metric value for the data point.
62
+ # @return [Float]
63
+ #
64
+ # @!attribute [rw] maximum
65
+ # The maximum metric value for the data point.
66
+ # @return [Float]
67
+ #
68
+ # @!attribute [rw] unit
69
+ # The standard unit for the data point.
70
+ # @return [String]
71
+ #
72
+ # @!attribute [rw] extended_statistics
73
+ # The percentile statistic for the data point.
74
+ # @return [Hash<String,Float>]
75
+ class Datapoint < Struct.new(
76
+ :timestamp,
77
+ :sample_count,
78
+ :average,
79
+ :sum,
80
+ :minimum,
81
+ :maximum,
82
+ :unit,
83
+ :extended_statistics)
84
+ include Aws::Structure
85
+ end
86
+
87
+ # @note When making an API call, pass DeleteAlarmsInput
88
+ # data as a hash:
89
+ #
90
+ # {
91
+ # alarm_names: ["AlarmName"], # required
92
+ # }
93
+ # @!attribute [rw] alarm_names
94
+ # The alarms to be deleted.
95
+ # @return [Array<String>]
96
+ class DeleteAlarmsInput < Struct.new(
97
+ :alarm_names)
98
+ include Aws::Structure
99
+ end
100
+
101
+ # @note When making an API call, pass DescribeAlarmHistoryInput
102
+ # data as a hash:
103
+ #
104
+ # {
105
+ # alarm_name: "AlarmName",
106
+ # history_item_type: "ConfigurationUpdate", # accepts ConfigurationUpdate, StateUpdate, Action
107
+ # start_date: Time.now,
108
+ # end_date: Time.now,
109
+ # max_records: 1,
110
+ # next_token: "NextToken",
111
+ # }
112
+ # @!attribute [rw] alarm_name
113
+ # The name of the alarm.
114
+ # @return [String]
115
+ #
116
+ # @!attribute [rw] history_item_type
117
+ # The type of alarm histories to retrieve.
118
+ # @return [String]
119
+ #
120
+ # @!attribute [rw] start_date
121
+ # The starting date to retrieve alarm history.
122
+ # @return [Time]
123
+ #
124
+ # @!attribute [rw] end_date
125
+ # The ending date to retrieve alarm history.
126
+ # @return [Time]
127
+ #
128
+ # @!attribute [rw] max_records
129
+ # The maximum number of alarm history records to retrieve.
130
+ # @return [Integer]
131
+ #
132
+ # @!attribute [rw] next_token
133
+ # The token returned by a previous call to indicate that there is more
134
+ # data available.
135
+ # @return [String]
136
+ class DescribeAlarmHistoryInput < Struct.new(
137
+ :alarm_name,
138
+ :history_item_type,
139
+ :start_date,
140
+ :end_date,
141
+ :max_records,
142
+ :next_token)
143
+ include Aws::Structure
144
+ end
145
+
146
+ # @!attribute [rw] alarm_history_items
147
+ # The alarm histories, in JSON format.
148
+ # @return [Array<Types::AlarmHistoryItem>]
149
+ #
150
+ # @!attribute [rw] next_token
151
+ # The token that marks the start of the next batch of returned
152
+ # results.
153
+ # @return [String]
154
+ class DescribeAlarmHistoryOutput < Struct.new(
155
+ :alarm_history_items,
156
+ :next_token)
157
+ include Aws::Structure
158
+ end
159
+
160
+ # @note When making an API call, pass DescribeAlarmsForMetricInput
161
+ # data as a hash:
162
+ #
163
+ # {
164
+ # metric_name: "MetricName", # required
165
+ # namespace: "Namespace", # required
166
+ # statistic: "SampleCount", # accepts SampleCount, Average, Sum, Minimum, Maximum
167
+ # extended_statistic: "ExtendedStatistic",
168
+ # dimensions: [
169
+ # {
170
+ # name: "DimensionName", # required
171
+ # value: "DimensionValue", # required
172
+ # },
173
+ # ],
174
+ # period: 1,
175
+ # unit: "Seconds", # accepts Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, None
176
+ # }
177
+ # @!attribute [rw] metric_name
178
+ # The name of the metric.
179
+ # @return [String]
180
+ #
181
+ # @!attribute [rw] namespace
182
+ # The namespace of the metric.
183
+ # @return [String]
184
+ #
185
+ # @!attribute [rw] statistic
186
+ # The statistic for the metric, other than percentiles. For percentile
187
+ # statistics, use `ExtendedStatistics`.
188
+ # @return [String]
189
+ #
190
+ # @!attribute [rw] extended_statistic
191
+ # The percentile statistic for the metric. Specify a value between
192
+ # p0.0 and p100.
193
+ # @return [String]
194
+ #
195
+ # @!attribute [rw] dimensions
196
+ # The dimensions associated with the metric. If the metric has any
197
+ # associated dimensions, you must specify them in order for the call
198
+ # to succeed.
199
+ # @return [Array<Types::Dimension>]
200
+ #
201
+ # @!attribute [rw] period
202
+ # The period, in seconds, over which the statistic is applied.
203
+ # @return [Integer]
204
+ #
205
+ # @!attribute [rw] unit
206
+ # The unit for the metric.
207
+ # @return [String]
208
+ class DescribeAlarmsForMetricInput < Struct.new(
209
+ :metric_name,
210
+ :namespace,
211
+ :statistic,
212
+ :extended_statistic,
213
+ :dimensions,
214
+ :period,
215
+ :unit)
216
+ include Aws::Structure
217
+ end
218
+
219
+ # @!attribute [rw] metric_alarms
220
+ # The information for each alarm with the specified metric.
221
+ # @return [Array<Types::MetricAlarm>]
222
+ class DescribeAlarmsForMetricOutput < Struct.new(
223
+ :metric_alarms)
224
+ include Aws::Structure
225
+ end
226
+
227
+ # @note When making an API call, pass DescribeAlarmsInput
228
+ # data as a hash:
229
+ #
230
+ # {
231
+ # alarm_names: ["AlarmName"],
232
+ # alarm_name_prefix: "AlarmNamePrefix",
233
+ # state_value: "OK", # accepts OK, ALARM, INSUFFICIENT_DATA
234
+ # action_prefix: "ActionPrefix",
235
+ # max_records: 1,
236
+ # next_token: "NextToken",
237
+ # }
238
+ # @!attribute [rw] alarm_names
239
+ # The names of the alarms.
240
+ # @return [Array<String>]
241
+ #
242
+ # @!attribute [rw] alarm_name_prefix
243
+ # The alarm name prefix. You cannot specify `AlarmNames` if this
244
+ # parameter is specified.
245
+ # @return [String]
246
+ #
247
+ # @!attribute [rw] state_value
248
+ # The state value to be used in matching alarms.
249
+ # @return [String]
250
+ #
251
+ # @!attribute [rw] action_prefix
252
+ # The action name prefix.
253
+ # @return [String]
254
+ #
255
+ # @!attribute [rw] max_records
256
+ # The maximum number of alarm descriptions to retrieve.
257
+ # @return [Integer]
258
+ #
259
+ # @!attribute [rw] next_token
260
+ # The token returned by a previous call to indicate that there is more
261
+ # data available.
262
+ # @return [String]
263
+ class DescribeAlarmsInput < Struct.new(
264
+ :alarm_names,
265
+ :alarm_name_prefix,
266
+ :state_value,
267
+ :action_prefix,
268
+ :max_records,
269
+ :next_token)
270
+ include Aws::Structure
271
+ end
272
+
273
+ # @!attribute [rw] metric_alarms
274
+ # The information for the specified alarms.
275
+ # @return [Array<Types::MetricAlarm>]
276
+ #
277
+ # @!attribute [rw] next_token
278
+ # The token that marks the start of the next batch of returned
279
+ # results.
280
+ # @return [String]
281
+ class DescribeAlarmsOutput < Struct.new(
282
+ :metric_alarms,
283
+ :next_token)
284
+ include Aws::Structure
285
+ end
286
+
287
+ # Expands the identity of a metric.
288
+ # @note When making an API call, pass Dimension
289
+ # data as a hash:
290
+ #
291
+ # {
292
+ # name: "DimensionName", # required
293
+ # value: "DimensionValue", # required
294
+ # }
295
+ # @!attribute [rw] name
296
+ # The name of the dimension.
297
+ # @return [String]
298
+ #
299
+ # @!attribute [rw] value
300
+ # The value representing the dimension measurement.
301
+ # @return [String]
302
+ class Dimension < Struct.new(
303
+ :name,
304
+ :value)
305
+ include Aws::Structure
306
+ end
307
+
308
+ # Represents filters for a dimension.
309
+ # @note When making an API call, pass DimensionFilter
310
+ # data as a hash:
311
+ #
312
+ # {
313
+ # name: "DimensionName", # required
314
+ # value: "DimensionValue",
315
+ # }
316
+ # @!attribute [rw] name
317
+ # The dimension name to be matched.
318
+ # @return [String]
319
+ #
320
+ # @!attribute [rw] value
321
+ # The value of the dimension to be matched.
322
+ # @return [String]
323
+ class DimensionFilter < Struct.new(
324
+ :name,
325
+ :value)
326
+ include Aws::Structure
327
+ end
328
+
329
+ # @note When making an API call, pass DisableAlarmActionsInput
330
+ # data as a hash:
331
+ #
332
+ # {
333
+ # alarm_names: ["AlarmName"], # required
334
+ # }
335
+ # @!attribute [rw] alarm_names
336
+ # The names of the alarms.
337
+ # @return [Array<String>]
338
+ class DisableAlarmActionsInput < Struct.new(
339
+ :alarm_names)
340
+ include Aws::Structure
341
+ end
342
+
343
+ # @note When making an API call, pass EnableAlarmActionsInput
344
+ # data as a hash:
345
+ #
346
+ # {
347
+ # alarm_names: ["AlarmName"], # required
348
+ # }
349
+ # @!attribute [rw] alarm_names
350
+ # The names of the alarms.
351
+ # @return [Array<String>]
352
+ class EnableAlarmActionsInput < Struct.new(
353
+ :alarm_names)
354
+ include Aws::Structure
355
+ end
356
+
357
+ # @note When making an API call, pass GetMetricStatisticsInput
358
+ # data as a hash:
359
+ #
360
+ # {
361
+ # namespace: "Namespace", # required
362
+ # metric_name: "MetricName", # required
363
+ # dimensions: [
364
+ # {
365
+ # name: "DimensionName", # required
366
+ # value: "DimensionValue", # required
367
+ # },
368
+ # ],
369
+ # start_time: Time.now, # required
370
+ # end_time: Time.now, # required
371
+ # period: 1, # required
372
+ # statistics: ["SampleCount"], # accepts SampleCount, Average, Sum, Minimum, Maximum
373
+ # extended_statistics: ["ExtendedStatistic"],
374
+ # unit: "Seconds", # accepts Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, None
375
+ # }
376
+ # @!attribute [rw] namespace
377
+ # The namespace of the metric, with or without spaces.
378
+ # @return [String]
379
+ #
380
+ # @!attribute [rw] metric_name
381
+ # The name of the metric, with or without spaces.
382
+ # @return [String]
383
+ #
384
+ # @!attribute [rw] dimensions
385
+ # The dimensions. CloudWatch treats each unique combination of
386
+ # dimensions as a separate metric. You can't retrieve statistics
387
+ # using combinations of dimensions that were not specially published.
388
+ # You must specify the same dimensions that were used when the metrics
389
+ # were created. For an example, see [Dimension Combinations][1] in the
390
+ # *Amazon CloudWatch User Guide*.
391
+ #
392
+ #
393
+ #
394
+ # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#dimension-combinations
395
+ # @return [Array<Types::Dimension>]
396
+ #
397
+ # @!attribute [rw] start_time
398
+ # The time stamp that determines the first data point to return. Note
399
+ # that start times are evaluated relative to the time that CloudWatch
400
+ # receives the request.
401
+ #
402
+ # The value specified is inclusive; results include data points with
403
+ # the specified time stamp. The time stamp must be in ISO 8601 UTC
404
+ # format (for example, 2016-10-03T23:00:00Z).
405
+ #
406
+ # CloudWatch rounds the specified time stamp as follows:
407
+ #
408
+ # * Start time less than 15 days ago - Round down to the nearest whole
409
+ # minute. For example, 12:32:34 is rounded down to 12:32:00.
410
+ #
411
+ # * Start time between 15 and 63 days ago - Round down to the nearest
412
+ # 5-minute clock interval. For example, 12:32:34 is rounded down to
413
+ # 12:30:00.
414
+ #
415
+ # * Start time greater than 63 days ago - Round down to the nearest
416
+ # 1-hour clock interval. For example, 12:32:34 is rounded down to
417
+ # 12:00:00.
418
+ # @return [Time]
419
+ #
420
+ # @!attribute [rw] end_time
421
+ # The time stamp that determines the last data point to return.
422
+ #
423
+ # The value specified is exclusive; results will include data points
424
+ # up to the specified time stamp. The time stamp must be in ISO 8601
425
+ # UTC format (for example, 2016-10-10T23:00:00Z).
426
+ # @return [Time]
427
+ #
428
+ # @!attribute [rw] period
429
+ # The granularity, in seconds, of the returned data points. A period
430
+ # can be as short as one minute (60 seconds) and must be a multiple of
431
+ # 60. The default value is 60.
432
+ #
433
+ # If the `StartTime` parameter specifies a time stamp that is greater
434
+ # than 15 days ago, you must specify the period as follows or no data
435
+ # points in that time range is returned:
436
+ #
437
+ # * Start time between 15 and 63 days ago - Use a multiple of 300
438
+ # seconds (5 minutes).
439
+ #
440
+ # * Start time greater than 63 days ago - Use a multiple of 3600
441
+ # seconds (1 hour).
442
+ # @return [Integer]
443
+ #
444
+ # @!attribute [rw] statistics
445
+ # The metric statistics, other than percentile. For percentile
446
+ # statistics, use `ExtendedStatistic`.
447
+ # @return [Array<String>]
448
+ #
449
+ # @!attribute [rw] extended_statistics
450
+ # The percentile statistics. Specify values between p0.0 and p100.
451
+ # @return [Array<String>]
452
+ #
453
+ # @!attribute [rw] unit
454
+ # The unit for a given metric. Metrics may be reported in multiple
455
+ # units. Not supplying a unit results in all units being returned. If
456
+ # the metric only ever reports one unit, specifying a unit has no
457
+ # effect.
458
+ # @return [String]
459
+ class GetMetricStatisticsInput < Struct.new(
460
+ :namespace,
461
+ :metric_name,
462
+ :dimensions,
463
+ :start_time,
464
+ :end_time,
465
+ :period,
466
+ :statistics,
467
+ :extended_statistics,
468
+ :unit)
469
+ include Aws::Structure
470
+ end
471
+
472
+ # @!attribute [rw] label
473
+ # A label for the specified metric.
474
+ # @return [String]
475
+ #
476
+ # @!attribute [rw] datapoints
477
+ # The data points for the specified metric.
478
+ # @return [Array<Types::Datapoint>]
479
+ class GetMetricStatisticsOutput < Struct.new(
480
+ :label,
481
+ :datapoints)
482
+ include Aws::Structure
483
+ end
484
+
485
+ # @note When making an API call, pass ListMetricsInput
486
+ # data as a hash:
487
+ #
488
+ # {
489
+ # namespace: "Namespace",
490
+ # metric_name: "MetricName",
491
+ # dimensions: [
492
+ # {
493
+ # name: "DimensionName", # required
494
+ # value: "DimensionValue",
495
+ # },
496
+ # ],
497
+ # next_token: "NextToken",
498
+ # }
499
+ # @!attribute [rw] namespace
500
+ # The namespace to filter against.
501
+ # @return [String]
502
+ #
503
+ # @!attribute [rw] metric_name
504
+ # The name of the metric to filter against.
505
+ # @return [String]
506
+ #
507
+ # @!attribute [rw] dimensions
508
+ # The dimensions to filter against.
509
+ # @return [Array<Types::DimensionFilter>]
510
+ #
511
+ # @!attribute [rw] next_token
512
+ # The token returned by a previous call to indicate that there is more
513
+ # data available.
514
+ # @return [String]
515
+ class ListMetricsInput < Struct.new(
516
+ :namespace,
517
+ :metric_name,
518
+ :dimensions,
519
+ :next_token)
520
+ include Aws::Structure
521
+ end
522
+
523
+ # @!attribute [rw] metrics
524
+ # The metrics.
525
+ # @return [Array<Types::Metric>]
526
+ #
527
+ # @!attribute [rw] next_token
528
+ # The token that marks the start of the next batch of returned
529
+ # results.
530
+ # @return [String]
531
+ class ListMetricsOutput < Struct.new(
532
+ :metrics,
533
+ :next_token)
534
+ include Aws::Structure
535
+ end
536
+
537
+ # Represents a specific metric.
538
+ # @!attribute [rw] namespace
539
+ # The namespace of the metric.
540
+ # @return [String]
541
+ #
542
+ # @!attribute [rw] metric_name
543
+ # The name of the metric.
544
+ # @return [String]
545
+ #
546
+ # @!attribute [rw] dimensions
547
+ # The dimensions for the metric.
548
+ # @return [Array<Types::Dimension>]
549
+ class Metric < Struct.new(
550
+ :namespace,
551
+ :metric_name,
552
+ :dimensions)
553
+ include Aws::Structure
554
+ end
555
+
556
+ # Represents an alarm.
557
+ # @!attribute [rw] alarm_name
558
+ # The name of the alarm.
559
+ # @return [String]
560
+ #
561
+ # @!attribute [rw] alarm_arn
562
+ # The Amazon Resource Name (ARN) of the alarm.
563
+ # @return [String]
564
+ #
565
+ # @!attribute [rw] alarm_description
566
+ # The description of the alarm.
567
+ # @return [String]
568
+ #
569
+ # @!attribute [rw] alarm_configuration_updated_timestamp
570
+ # The time stamp of the last update to the alarm configuration.
571
+ # @return [Time]
572
+ #
573
+ # @!attribute [rw] actions_enabled
574
+ # Indicates whether actions should be executed during any changes to
575
+ # the alarm state.
576
+ # @return [Boolean]
577
+ #
578
+ # @!attribute [rw] ok_actions
579
+ # The actions to execute when this alarm transitions to the `OK` state
580
+ # from any other state. Each action is specified as an Amazon Resource
581
+ # Name (ARN).
582
+ # @return [Array<String>]
583
+ #
584
+ # @!attribute [rw] alarm_actions
585
+ # The actions to execute when this alarm transitions to the `ALARM`
586
+ # state from any other state. Each action is specified as an Amazon
587
+ # Resource Name (ARN).
588
+ # @return [Array<String>]
589
+ #
590
+ # @!attribute [rw] insufficient_data_actions
591
+ # The actions to execute when this alarm transitions to the
592
+ # `INSUFFICIENT_DATA` state from any other state. Each action is
593
+ # specified as an Amazon Resource Name (ARN).
594
+ # @return [Array<String>]
595
+ #
596
+ # @!attribute [rw] state_value
597
+ # The state value for the alarm.
598
+ # @return [String]
599
+ #
600
+ # @!attribute [rw] state_reason
601
+ # An explanation for the alarm state, in text format.
602
+ # @return [String]
603
+ #
604
+ # @!attribute [rw] state_reason_data
605
+ # An explanation for the alarm state, in JSON format.
606
+ # @return [String]
607
+ #
608
+ # @!attribute [rw] state_updated_timestamp
609
+ # The time stamp of the last update to the alarm state.
610
+ # @return [Time]
611
+ #
612
+ # @!attribute [rw] metric_name
613
+ # The name of the metric associated with the alarm.
614
+ # @return [String]
615
+ #
616
+ # @!attribute [rw] namespace
617
+ # The namespace of the metric associated with the alarm.
618
+ # @return [String]
619
+ #
620
+ # @!attribute [rw] statistic
621
+ # The statistic for the metric associated with the alarm, other than
622
+ # percentile. For percentile statistics, use `ExtendedStatistic`.
623
+ # @return [String]
624
+ #
625
+ # @!attribute [rw] extended_statistic
626
+ # The percentile statistic for the metric associated with the alarm.
627
+ # Specify a value between p0.0 and p100.
628
+ # @return [String]
629
+ #
630
+ # @!attribute [rw] dimensions
631
+ # The dimensions for the metric associated with the alarm.
632
+ # @return [Array<Types::Dimension>]
633
+ #
634
+ # @!attribute [rw] period
635
+ # The period, in seconds, over which the statistic is applied.
636
+ # @return [Integer]
637
+ #
638
+ # @!attribute [rw] unit
639
+ # The unit of the metric associated with the alarm.
640
+ # @return [String]
641
+ #
642
+ # @!attribute [rw] evaluation_periods
643
+ # The number of periods over which data is compared to the specified
644
+ # threshold.
645
+ # @return [Integer]
646
+ #
647
+ # @!attribute [rw] threshold
648
+ # The value to compare with the specified statistic.
649
+ # @return [Float]
650
+ #
651
+ # @!attribute [rw] comparison_operator
652
+ # The arithmetic operation to use when comparing the specified
653
+ # statistic and threshold. The specified statistic value is used as
654
+ # the first operand.
655
+ # @return [String]
656
+ class MetricAlarm < Struct.new(
657
+ :alarm_name,
658
+ :alarm_arn,
659
+ :alarm_description,
660
+ :alarm_configuration_updated_timestamp,
661
+ :actions_enabled,
662
+ :ok_actions,
663
+ :alarm_actions,
664
+ :insufficient_data_actions,
665
+ :state_value,
666
+ :state_reason,
667
+ :state_reason_data,
668
+ :state_updated_timestamp,
669
+ :metric_name,
670
+ :namespace,
671
+ :statistic,
672
+ :extended_statistic,
673
+ :dimensions,
674
+ :period,
675
+ :unit,
676
+ :evaluation_periods,
677
+ :threshold,
678
+ :comparison_operator)
679
+ include Aws::Structure
680
+ end
681
+
682
+ # Encapsulates the information sent to either create a metric or add new
683
+ # values to be aggregated into an existing metric.
684
+ # @note When making an API call, pass MetricDatum
685
+ # data as a hash:
686
+ #
687
+ # {
688
+ # metric_name: "MetricName", # required
689
+ # dimensions: [
690
+ # {
691
+ # name: "DimensionName", # required
692
+ # value: "DimensionValue", # required
693
+ # },
694
+ # ],
695
+ # timestamp: Time.now,
696
+ # value: 1.0,
697
+ # statistic_values: {
698
+ # sample_count: 1.0, # required
699
+ # sum: 1.0, # required
700
+ # minimum: 1.0, # required
701
+ # maximum: 1.0, # required
702
+ # },
703
+ # unit: "Seconds", # accepts Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, None
704
+ # }
705
+ # @!attribute [rw] metric_name
706
+ # The name of the metric.
707
+ # @return [String]
708
+ #
709
+ # @!attribute [rw] dimensions
710
+ # The dimensions associated with the metric.
711
+ # @return [Array<Types::Dimension>]
712
+ #
713
+ # @!attribute [rw] timestamp
714
+ # The time the metric data was received, expressed as the number of
715
+ # milliseconds since Jan 1, 1970 00:00:00 UTC.
716
+ # @return [Time]
717
+ #
718
+ # @!attribute [rw] value
719
+ # The value for the metric.
720
+ #
721
+ # Although the parameter accepts numbers of type Double, Amazon
722
+ # CloudWatch rejects values that are either too small or too large.
723
+ # Values must be in the range of 8.515920e-109 to 1.174271e+108 (Base
724
+ # 10) or 2e-360 to 2e360 (Base 2). In addition, special values (for
725
+ # example, NaN, +Infinity, -Infinity) are not supported.
726
+ # @return [Float]
727
+ #
728
+ # @!attribute [rw] statistic_values
729
+ # The statistical values for the metric.
730
+ # @return [Types::StatisticSet]
731
+ #
732
+ # @!attribute [rw] unit
733
+ # The unit of the metric.
734
+ # @return [String]
735
+ class MetricDatum < Struct.new(
736
+ :metric_name,
737
+ :dimensions,
738
+ :timestamp,
739
+ :value,
740
+ :statistic_values,
741
+ :unit)
742
+ include Aws::Structure
743
+ end
744
+
745
+ # @note When making an API call, pass PutMetricAlarmInput
746
+ # data as a hash:
747
+ #
748
+ # {
749
+ # alarm_name: "AlarmName", # required
750
+ # alarm_description: "AlarmDescription",
751
+ # actions_enabled: false,
752
+ # ok_actions: ["ResourceName"],
753
+ # alarm_actions: ["ResourceName"],
754
+ # insufficient_data_actions: ["ResourceName"],
755
+ # metric_name: "MetricName", # required
756
+ # namespace: "Namespace", # required
757
+ # statistic: "SampleCount", # accepts SampleCount, Average, Sum, Minimum, Maximum
758
+ # extended_statistic: "ExtendedStatistic",
759
+ # dimensions: [
760
+ # {
761
+ # name: "DimensionName", # required
762
+ # value: "DimensionValue", # required
763
+ # },
764
+ # ],
765
+ # period: 1, # required
766
+ # unit: "Seconds", # accepts Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, None
767
+ # evaluation_periods: 1, # required
768
+ # threshold: 1.0, # required
769
+ # comparison_operator: "GreaterThanOrEqualToThreshold", # required, accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold
770
+ # }
771
+ # @!attribute [rw] alarm_name
772
+ # The name for the alarm. This name must be unique within the AWS
773
+ # account.
774
+ # @return [String]
775
+ #
776
+ # @!attribute [rw] alarm_description
777
+ # The description for the alarm.
778
+ # @return [String]
779
+ #
780
+ # @!attribute [rw] actions_enabled
781
+ # Indicates whether actions should be executed during any changes to
782
+ # the alarm state.
783
+ # @return [Boolean]
784
+ #
785
+ # @!attribute [rw] ok_actions
786
+ # The actions to execute when this alarm transitions to an `OK` state
787
+ # from any other state. Each action is specified as an Amazon Resource
788
+ # Name (ARN).
789
+ #
790
+ # Valid Values: arn:aws:automate:*region*\:ec2:stop \|
791
+ # arn:aws:automate:*region*\:ec2:terminate \|
792
+ # arn:aws:automate:*region*\:ec2:recover
793
+ #
794
+ # Valid Values (for use with IAM roles):
795
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Stop/1.0
796
+ # \|
797
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Terminate/1.0
798
+ # \|
799
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Reboot/1.0
800
+ # @return [Array<String>]
801
+ #
802
+ # @!attribute [rw] alarm_actions
803
+ # The actions to execute when this alarm transitions to the `ALARM`
804
+ # state from any other state. Each action is specified as an Amazon
805
+ # Resource Name (ARN).
806
+ #
807
+ # Valid Values: arn:aws:automate:*region*\:ec2:stop \|
808
+ # arn:aws:automate:*region*\:ec2:terminate \|
809
+ # arn:aws:automate:*region*\:ec2:recover
810
+ #
811
+ # Valid Values (for use with IAM roles):
812
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Stop/1.0
813
+ # \|
814
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Terminate/1.0
815
+ # \|
816
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Reboot/1.0
817
+ # @return [Array<String>]
818
+ #
819
+ # @!attribute [rw] insufficient_data_actions
820
+ # The actions to execute when this alarm transitions to the
821
+ # `INSUFFICIENT_DATA` state from any other state. Each action is
822
+ # specified as an Amazon Resource Name (ARN).
823
+ #
824
+ # Valid Values: arn:aws:automate:*region*\:ec2:stop \|
825
+ # arn:aws:automate:*region*\:ec2:terminate \|
826
+ # arn:aws:automate:*region*\:ec2:recover
827
+ #
828
+ # Valid Values (for use with IAM roles):
829
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Stop/1.0
830
+ # \|
831
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Terminate/1.0
832
+ # \|
833
+ # arn:aws:swf:us-east-1:\\\{*customer-account*\\}:action/actions/AWS\_EC2.InstanceId.Reboot/1.0
834
+ # @return [Array<String>]
835
+ #
836
+ # @!attribute [rw] metric_name
837
+ # The name for the metric associated with the alarm.
838
+ # @return [String]
839
+ #
840
+ # @!attribute [rw] namespace
841
+ # The namespace for the metric associated with the alarm.
842
+ # @return [String]
843
+ #
844
+ # @!attribute [rw] statistic
845
+ # The statistic for the metric associated with the alarm, other than
846
+ # percentile. For percentile statistics, use `ExtendedStatistic`.
847
+ # @return [String]
848
+ #
849
+ # @!attribute [rw] extended_statistic
850
+ # The percentile statistic for the metric associated with the alarm.
851
+ # Specify a value between p0.0 and p100.
852
+ # @return [String]
853
+ #
854
+ # @!attribute [rw] dimensions
855
+ # The dimensions for the metric associated with the alarm.
856
+ # @return [Array<Types::Dimension>]
857
+ #
858
+ # @!attribute [rw] period
859
+ # The period, in seconds, over which the specified statistic is
860
+ # applied.
861
+ # @return [Integer]
862
+ #
863
+ # @!attribute [rw] unit
864
+ # The unit of measure for the statistic. For example, the units for
865
+ # the Amazon EC2 NetworkIn metric are Bytes because NetworkIn tracks
866
+ # the number of bytes that an instance receives on all network
867
+ # interfaces. You can also specify a unit when you create a custom
868
+ # metric. Units help provide conceptual meaning to your data. Metric
869
+ # data points that specify a unit of measure, such as Percent, are
870
+ # aggregated separately.
871
+ #
872
+ # If you specify a unit, you must use a unit that is appropriate for
873
+ # the metric. Otherwise, the Amazon CloudWatch alarm can get stuck in
874
+ # the `INSUFFICIENT DATA` state.
875
+ # @return [String]
876
+ #
877
+ # @!attribute [rw] evaluation_periods
878
+ # The number of periods over which data is compared to the specified
879
+ # threshold.
880
+ # @return [Integer]
881
+ #
882
+ # @!attribute [rw] threshold
883
+ # The value against which the specified statistic is compared.
884
+ # @return [Float]
885
+ #
886
+ # @!attribute [rw] comparison_operator
887
+ # The arithmetic operation to use when comparing the specified
888
+ # statistic and threshold. The specified statistic value is used as
889
+ # the first operand.
890
+ # @return [String]
891
+ class PutMetricAlarmInput < Struct.new(
892
+ :alarm_name,
893
+ :alarm_description,
894
+ :actions_enabled,
895
+ :ok_actions,
896
+ :alarm_actions,
897
+ :insufficient_data_actions,
898
+ :metric_name,
899
+ :namespace,
900
+ :statistic,
901
+ :extended_statistic,
902
+ :dimensions,
903
+ :period,
904
+ :unit,
905
+ :evaluation_periods,
906
+ :threshold,
907
+ :comparison_operator)
908
+ include Aws::Structure
909
+ end
910
+
911
+ # @note When making an API call, pass PutMetricDataInput
912
+ # data as a hash:
913
+ #
914
+ # {
915
+ # namespace: "Namespace", # required
916
+ # metric_data: [ # required
917
+ # {
918
+ # metric_name: "MetricName", # required
919
+ # dimensions: [
920
+ # {
921
+ # name: "DimensionName", # required
922
+ # value: "DimensionValue", # required
923
+ # },
924
+ # ],
925
+ # timestamp: Time.now,
926
+ # value: 1.0,
927
+ # statistic_values: {
928
+ # sample_count: 1.0, # required
929
+ # sum: 1.0, # required
930
+ # minimum: 1.0, # required
931
+ # maximum: 1.0, # required
932
+ # },
933
+ # unit: "Seconds", # accepts Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Percent, Count, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count/Second, None
934
+ # },
935
+ # ],
936
+ # }
937
+ # @!attribute [rw] namespace
938
+ # The namespace for the metric data.
939
+ #
940
+ # You cannot specify a namespace that begins with "AWS/". Namespaces
941
+ # that begin with "AWS/" are reserved for use by Amazon Web Services
942
+ # products.
943
+ # @return [String]
944
+ #
945
+ # @!attribute [rw] metric_data
946
+ # The data for the metric.
947
+ # @return [Array<Types::MetricDatum>]
948
+ class PutMetricDataInput < Struct.new(
949
+ :namespace,
950
+ :metric_data)
951
+ include Aws::Structure
952
+ end
953
+
954
+ # @note When making an API call, pass SetAlarmStateInput
955
+ # data as a hash:
956
+ #
957
+ # {
958
+ # alarm_name: "AlarmName", # required
959
+ # state_value: "OK", # required, accepts OK, ALARM, INSUFFICIENT_DATA
960
+ # state_reason: "StateReason", # required
961
+ # state_reason_data: "StateReasonData",
962
+ # }
963
+ # @!attribute [rw] alarm_name
964
+ # The name for the alarm. This name must be unique within the AWS
965
+ # account. The maximum length is 255 characters.
966
+ # @return [String]
967
+ #
968
+ # @!attribute [rw] state_value
969
+ # The value of the state.
970
+ # @return [String]
971
+ #
972
+ # @!attribute [rw] state_reason
973
+ # The reason that this alarm is set to this specific state, in text
974
+ # format.
975
+ # @return [String]
976
+ #
977
+ # @!attribute [rw] state_reason_data
978
+ # The reason that this alarm is set to this specific state, in JSON
979
+ # format.
980
+ # @return [String]
981
+ class SetAlarmStateInput < Struct.new(
982
+ :alarm_name,
983
+ :state_value,
984
+ :state_reason,
985
+ :state_reason_data)
986
+ include Aws::Structure
987
+ end
988
+
989
+ # Represents a set of statistics that describes a specific metric.
990
+ # @note When making an API call, pass StatisticSet
991
+ # data as a hash:
992
+ #
993
+ # {
994
+ # sample_count: 1.0, # required
995
+ # sum: 1.0, # required
996
+ # minimum: 1.0, # required
997
+ # maximum: 1.0, # required
998
+ # }
999
+ # @!attribute [rw] sample_count
1000
+ # The number of samples used for the statistic set.
1001
+ # @return [Float]
1002
+ #
1003
+ # @!attribute [rw] sum
1004
+ # The sum of values for the sample set.
1005
+ # @return [Float]
1006
+ #
1007
+ # @!attribute [rw] minimum
1008
+ # The minimum value of the sample set.
1009
+ # @return [Float]
1010
+ #
1011
+ # @!attribute [rw] maximum
1012
+ # The maximum value of the sample set.
1013
+ # @return [Float]
1014
+ class StatisticSet < Struct.new(
1015
+ :sample_count,
1016
+ :sum,
1017
+ :minimum,
1018
+ :maximum)
1019
+ include Aws::Structure
1020
+ end
1021
+
1022
+ end
1023
+ end
1024
+ end