aws-sdk-cloudwatch 0.0.6 → 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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