aws-sdk-cloudwatch 1.4.0 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 48d9aa663940824517dcdfdfa92aad12885b40b4
4
- data.tar.gz: 3e5cf0dc65052892ac7bd9b3a33f2ab403c7e025
3
+ metadata.gz: 685e98cfaecb5af8b1aee48655bb4d6521121e94
4
+ data.tar.gz: 17429224187972f355db51ff811ec87e284b7cef
5
5
  SHA512:
6
- metadata.gz: f4ffe66e229cf3a26b4894e9f164b53759348d33a08f06c436bc2d33b63765b6d2989db22da68a3e85c5af480fd2318f014d6c9439bfd0bc23bc0ab99c87e70d
7
- data.tar.gz: 75ee0e804f85db0fc3f55ce3a83015846b5337fb747fe9c08aad2603defa7d857da3367f6a20245a9d6a9d632e613197e4aab4fa67f34ccf8d7baa459c693314
6
+ metadata.gz: 29977d078d428b6d9430e2d65eaeb3a6686e41ebe75d2ae3d71525dbdda7ec5b616087a00341d56957c6f95b629a19def012f5e81984cfb9dc5ba8e1ee1e4166
7
+ data.tar.gz: ff00383f7f7a87dc97e29ca2332926e55f92bce485b08f0d7eaadf5bac18a9263c8e17f0dc95b14c4737d1169bf5e833b2c4b48249ac670346a339da121795f7
@@ -45,6 +45,6 @@ require_relative 'aws-sdk-cloudwatch/customizations'
45
45
  # @service
46
46
  module Aws::CloudWatch
47
47
 
48
- GEM_VERSION = '1.4.0'
48
+ GEM_VERSION = '1.5.0'
49
49
 
50
50
  end
@@ -511,6 +511,114 @@ module Aws::CloudWatch
511
511
  req.send_request(options)
512
512
  end
513
513
 
514
+ # You can use the `GetMetricData` API to retrieve as many as 100
515
+ # different metrics in a single request, with a total of as many as
516
+ # 100,800 datapoints. You can also optionally perform math expressions
517
+ # on the values of the returned statistics, to create new time series
518
+ # that represent new insights into your data. For example, using Lambda
519
+ # metrics, you could divide the Errors metric by the Invocations metric
520
+ # to get an error rate time series. For more information about metric
521
+ # math expressions, see [Metric Math Syntax and Functions][1] in the
522
+ # *Amazon CloudWatch User Guide*.
523
+ #
524
+ # Calls to the `GetMetricData` API have a different pricing structure
525
+ # than calls to `GetMetricStatistics`. For more information about
526
+ # pricing, see [Amazon CloudWatch Pricing][2].
527
+ #
528
+ #
529
+ #
530
+ # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html#metric-math-syntax
531
+ # [2]: https://aws.amazon.com/cloudwatch/pricing/
532
+ #
533
+ # @option params [required, Array<Types::MetricDataQuery>] :metric_data_queries
534
+ # The metric queries to be returned. A single `GetMetricData` call can
535
+ # include as many as 100 `MetricDataQuery` structures. Each of these
536
+ # structures can specify either a metric to retrieve, or a math
537
+ # expression to perform on retrieved data.
538
+ #
539
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
540
+ # The time stamp indicating the earliest data to be returned.
541
+ #
542
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
543
+ # The time stamp indicating the latest data to be returned.
544
+ #
545
+ # @option params [String] :next_token
546
+ # Include this value, if it was returned by the previous call, to get
547
+ # the next set of data points.
548
+ #
549
+ # @option params [String] :scan_by
550
+ # The order in which data points should be returned.
551
+ # `TimestampDescending` returns the newest data first and paginates when
552
+ # the `MaxDatapoints` limit is reached. `TimestampAscending` returns the
553
+ # oldest data first and paginates when the `MaxDatapoints` limit is
554
+ # reached.
555
+ #
556
+ # @option params [Integer] :max_datapoints
557
+ # The maximum number of data points the request should return before
558
+ # paginating. If you omit this, the default of 100,800 is used.
559
+ #
560
+ # @return [Types::GetMetricDataOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
561
+ #
562
+ # * {Types::GetMetricDataOutput#metric_data_results #metric_data_results} => Array&lt;Types::MetricDataResult&gt;
563
+ # * {Types::GetMetricDataOutput#next_token #next_token} => String
564
+ #
565
+ # @example Request syntax with placeholder values
566
+ #
567
+ # resp = client.get_metric_data({
568
+ # metric_data_queries: [ # required
569
+ # {
570
+ # id: "MetricId", # required
571
+ # metric_stat: {
572
+ # metric: { # required
573
+ # namespace: "Namespace",
574
+ # metric_name: "MetricName",
575
+ # dimensions: [
576
+ # {
577
+ # name: "DimensionName", # required
578
+ # value: "DimensionValue", # required
579
+ # },
580
+ # ],
581
+ # },
582
+ # period: 1, # required
583
+ # stat: "Stat", # required
584
+ # 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
585
+ # },
586
+ # expression: "MetricExpression",
587
+ # label: "MetricLabel",
588
+ # return_data: false,
589
+ # },
590
+ # ],
591
+ # start_time: Time.now, # required
592
+ # end_time: Time.now, # required
593
+ # next_token: "NextToken",
594
+ # scan_by: "TimestampDescending", # accepts TimestampDescending, TimestampAscending
595
+ # max_datapoints: 1,
596
+ # })
597
+ #
598
+ # @example Response structure
599
+ #
600
+ # resp.metric_data_results #=> Array
601
+ # resp.metric_data_results[0].id #=> String
602
+ # resp.metric_data_results[0].label #=> String
603
+ # resp.metric_data_results[0].timestamps #=> Array
604
+ # resp.metric_data_results[0].timestamps[0] #=> Time
605
+ # resp.metric_data_results[0].values #=> Array
606
+ # resp.metric_data_results[0].values[0] #=> Float
607
+ # resp.metric_data_results[0].status_code #=> String, one of "Complete", "InternalError", "PartialData"
608
+ # resp.metric_data_results[0].messages #=> Array
609
+ # resp.metric_data_results[0].messages[0].code #=> String
610
+ # resp.metric_data_results[0].messages[0].value #=> String
611
+ # resp.next_token #=> String
612
+ #
613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetMetricData AWS API Documentation
614
+ #
615
+ # @overload get_metric_data(params = {})
616
+ # @param [Hash] params ({})
617
+ def get_metric_data(params = {}, options = {})
618
+ req = build_request(:get_metric_data, params)
619
+ req.send_request(options)
620
+ end
621
+
514
622
  # Gets statistics for the specified metric.
515
623
  #
516
624
  # The maximum number of data points returned from a single call is
@@ -667,8 +775,8 @@ module Aws::CloudWatch
667
775
  # @option params [String] :unit
668
776
  # The unit for a given metric. Metrics may be reported in multiple
669
777
  # units. Not supplying a unit results in all units being returned. If
670
- # the metric only ever reports one unit, specifying a unit has no
671
- # effect.
778
+ # you specify only a unit that the metric does not report, the results
779
+ # of the call are null.
672
780
  #
673
781
  # @return [Types::GetMetricStatisticsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
674
782
  #
@@ -1028,7 +1136,7 @@ module Aws::CloudWatch
1028
1136
  #
1029
1137
  # Be sure to specify 10 or 30 only for metrics that are stored by a
1030
1138
  # `PutMetricData` call with a `StorageResolution` of 1. If you specify a
1031
- # Period of 10 or 30 for a metric that does not have sub-minute
1139
+ # period of 10 or 30 for a metric that does not have sub-minute
1032
1140
  # resolution, the alarm still attempts to gather data at the period rate
1033
1141
  # that you specify. In this case, it does not receive data for the
1034
1142
  # attempts that do not correspond to a one-minute data resolution, and
@@ -1059,12 +1167,24 @@ module Aws::CloudWatch
1059
1167
  #
1060
1168
  # @option params [required, Integer] :evaluation_periods
1061
1169
  # The number of periods over which data is compared to the specified
1062
- # threshold. An alarm's total current evaluation period can be no
1063
- # longer than one day, so this number multiplied by `Period` cannot be
1064
- # more than 86,400 seconds.
1170
+ # threshold. If you are setting an alarm which requires that a number of
1171
+ # consecutive data points be breaching to trigger the alarm, this value
1172
+ # specifies that number. If you are setting an "M out of N" alarm,
1173
+ # this value is the N.
1174
+ #
1175
+ # An alarm's total current evaluation period can be no longer than one
1176
+ # day, so this number multiplied by `Period` cannot be more than 86,400
1177
+ # seconds.
1065
1178
  #
1066
1179
  # @option params [Integer] :datapoints_to_alarm
1067
1180
  # The number of datapoints that must be breaching to trigger the alarm.
1181
+ # This is used only if you are setting an "M out of N" alarm. In that
1182
+ # case, this value is the M. For more information, see [Evaluating an
1183
+ # Alarm][1] in the *Amazon CloudWatch User Guide*.
1184
+ #
1185
+ #
1186
+ #
1187
+ # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarm-evaluation
1068
1188
  #
1069
1189
  # @option params [required, Float] :threshold
1070
1190
  # The value against which the specified statistic is compared.
@@ -1284,7 +1404,7 @@ module Aws::CloudWatch
1284
1404
  params: params,
1285
1405
  config: config)
1286
1406
  context[:gem_name] = 'aws-sdk-cloudwatch'
1287
- context[:gem_version] = '1.4.0'
1407
+ context[:gem_version] = '1.5.0'
1288
1408
  Seahorse::Client::Request.new(handlers, context)
1289
1409
  end
1290
1410
 
@@ -38,6 +38,7 @@ module Aws::CloudWatch
38
38
  Datapoint = Shapes::StructureShape.new(name: 'Datapoint')
39
39
  DatapointValue = Shapes::FloatShape.new(name: 'DatapointValue')
40
40
  DatapointValueMap = Shapes::MapShape.new(name: 'DatapointValueMap')
41
+ DatapointValues = Shapes::ListShape.new(name: 'DatapointValues')
41
42
  Datapoints = Shapes::ListShape.new(name: 'Datapoints')
42
43
  DatapointsToAlarm = Shapes::IntegerShape.new(name: 'DatapointsToAlarm')
43
44
  DeleteAlarmsInput = Shapes::StructureShape.new(name: 'DeleteAlarmsInput')
@@ -65,6 +66,9 @@ module Aws::CloudWatch
65
66
  FaultDescription = Shapes::StringShape.new(name: 'FaultDescription')
66
67
  GetDashboardInput = Shapes::StructureShape.new(name: 'GetDashboardInput')
67
68
  GetDashboardOutput = Shapes::StructureShape.new(name: 'GetDashboardOutput')
69
+ GetMetricDataInput = Shapes::StructureShape.new(name: 'GetMetricDataInput')
70
+ GetMetricDataMaxDatapoints = Shapes::IntegerShape.new(name: 'GetMetricDataMaxDatapoints')
71
+ GetMetricDataOutput = Shapes::StructureShape.new(name: 'GetMetricDataOutput')
68
72
  GetMetricStatisticsInput = Shapes::StructureShape.new(name: 'GetMetricStatisticsInput')
69
73
  GetMetricStatisticsOutput = Shapes::StructureShape.new(name: 'GetMetricStatisticsOutput')
70
74
  HistoryData = Shapes::StringShape.new(name: 'HistoryData')
@@ -83,13 +87,24 @@ module Aws::CloudWatch
83
87
  ListMetricsOutput = Shapes::StructureShape.new(name: 'ListMetricsOutput')
84
88
  MaxRecords = Shapes::IntegerShape.new(name: 'MaxRecords')
85
89
  Message = Shapes::StringShape.new(name: 'Message')
90
+ MessageData = Shapes::StructureShape.new(name: 'MessageData')
91
+ MessageDataCode = Shapes::StringShape.new(name: 'MessageDataCode')
92
+ MessageDataValue = Shapes::StringShape.new(name: 'MessageDataValue')
86
93
  Metric = Shapes::StructureShape.new(name: 'Metric')
87
94
  MetricAlarm = Shapes::StructureShape.new(name: 'MetricAlarm')
88
95
  MetricAlarms = Shapes::ListShape.new(name: 'MetricAlarms')
89
96
  MetricData = Shapes::ListShape.new(name: 'MetricData')
97
+ MetricDataQueries = Shapes::ListShape.new(name: 'MetricDataQueries')
98
+ MetricDataQuery = Shapes::StructureShape.new(name: 'MetricDataQuery')
99
+ MetricDataResult = Shapes::StructureShape.new(name: 'MetricDataResult')
100
+ MetricDataResultMessages = Shapes::ListShape.new(name: 'MetricDataResultMessages')
101
+ MetricDataResults = Shapes::ListShape.new(name: 'MetricDataResults')
90
102
  MetricDatum = Shapes::StructureShape.new(name: 'MetricDatum')
103
+ MetricExpression = Shapes::StringShape.new(name: 'MetricExpression')
104
+ MetricId = Shapes::StringShape.new(name: 'MetricId')
91
105
  MetricLabel = Shapes::StringShape.new(name: 'MetricLabel')
92
106
  MetricName = Shapes::StringShape.new(name: 'MetricName')
107
+ MetricStat = Shapes::StructureShape.new(name: 'MetricStat')
93
108
  Metrics = Shapes::ListShape.new(name: 'Metrics')
94
109
  MissingRequiredParameterException = Shapes::StructureShape.new(name: 'MissingRequiredParameterException')
95
110
  Namespace = Shapes::StringShape.new(name: 'Namespace')
@@ -102,18 +117,23 @@ module Aws::CloudWatch
102
117
  ResourceList = Shapes::ListShape.new(name: 'ResourceList')
103
118
  ResourceName = Shapes::StringShape.new(name: 'ResourceName')
104
119
  ResourceNotFound = Shapes::StructureShape.new(name: 'ResourceNotFound')
120
+ ReturnData = Shapes::BooleanShape.new(name: 'ReturnData')
121
+ ScanBy = Shapes::StringShape.new(name: 'ScanBy')
105
122
  SetAlarmStateInput = Shapes::StructureShape.new(name: 'SetAlarmStateInput')
106
123
  Size = Shapes::IntegerShape.new(name: 'Size')
107
124
  StandardUnit = Shapes::StringShape.new(name: 'StandardUnit')
125
+ Stat = Shapes::StringShape.new(name: 'Stat')
108
126
  StateReason = Shapes::StringShape.new(name: 'StateReason')
109
127
  StateReasonData = Shapes::StringShape.new(name: 'StateReasonData')
110
128
  StateValue = Shapes::StringShape.new(name: 'StateValue')
111
129
  Statistic = Shapes::StringShape.new(name: 'Statistic')
112
130
  StatisticSet = Shapes::StructureShape.new(name: 'StatisticSet')
113
131
  Statistics = Shapes::ListShape.new(name: 'Statistics')
132
+ StatusCode = Shapes::StringShape.new(name: 'StatusCode')
114
133
  StorageResolution = Shapes::IntegerShape.new(name: 'StorageResolution')
115
134
  Threshold = Shapes::FloatShape.new(name: 'Threshold')
116
135
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
136
+ Timestamps = Shapes::ListShape.new(name: 'Timestamps')
117
137
  TreatMissingData = Shapes::StringShape.new(name: 'TreatMissingData')
118
138
 
119
139
  AlarmHistoryItem.add_member(:alarm_name, Shapes::ShapeRef.new(shape: AlarmName, location_name: "AlarmName"))
@@ -156,6 +176,8 @@ module Aws::CloudWatch
156
176
  DatapointValueMap.key = Shapes::ShapeRef.new(shape: ExtendedStatistic)
157
177
  DatapointValueMap.value = Shapes::ShapeRef.new(shape: DatapointValue)
158
178
 
179
+ DatapointValues.member = Shapes::ShapeRef.new(shape: DatapointValue)
180
+
159
181
  Datapoints.member = Shapes::ShapeRef.new(shape: Datapoint)
160
182
 
161
183
  DeleteAlarmsInput.add_member(:alarm_names, Shapes::ShapeRef.new(shape: AlarmNames, required: true, location_name: "AlarmNames"))
@@ -230,6 +252,18 @@ module Aws::CloudWatch
230
252
  GetDashboardOutput.add_member(:dashboard_name, Shapes::ShapeRef.new(shape: DashboardName, location_name: "DashboardName"))
231
253
  GetDashboardOutput.struct_class = Types::GetDashboardOutput
232
254
 
255
+ GetMetricDataInput.add_member(:metric_data_queries, Shapes::ShapeRef.new(shape: MetricDataQueries, required: true, location_name: "MetricDataQueries"))
256
+ GetMetricDataInput.add_member(:start_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "StartTime"))
257
+ GetMetricDataInput.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "EndTime"))
258
+ GetMetricDataInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
259
+ GetMetricDataInput.add_member(:scan_by, Shapes::ShapeRef.new(shape: ScanBy, location_name: "ScanBy"))
260
+ GetMetricDataInput.add_member(:max_datapoints, Shapes::ShapeRef.new(shape: GetMetricDataMaxDatapoints, location_name: "MaxDatapoints"))
261
+ GetMetricDataInput.struct_class = Types::GetMetricDataInput
262
+
263
+ GetMetricDataOutput.add_member(:metric_data_results, Shapes::ShapeRef.new(shape: MetricDataResults, location_name: "MetricDataResults"))
264
+ GetMetricDataOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
265
+ GetMetricDataOutput.struct_class = Types::GetMetricDataOutput
266
+
233
267
  GetMetricStatisticsInput.add_member(:namespace, Shapes::ShapeRef.new(shape: Namespace, required: true, location_name: "Namespace"))
234
268
  GetMetricStatisticsInput.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location_name: "MetricName"))
235
269
  GetMetricStatisticsInput.add_member(:dimensions, Shapes::ShapeRef.new(shape: Dimensions, location_name: "Dimensions"))
@@ -263,6 +297,10 @@ module Aws::CloudWatch
263
297
  ListMetricsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
264
298
  ListMetricsOutput.struct_class = Types::ListMetricsOutput
265
299
 
300
+ MessageData.add_member(:code, Shapes::ShapeRef.new(shape: MessageDataCode, location_name: "Code"))
301
+ MessageData.add_member(:value, Shapes::ShapeRef.new(shape: MessageDataValue, location_name: "Value"))
302
+ MessageData.struct_class = Types::MessageData
303
+
266
304
  Metric.add_member(:namespace, Shapes::ShapeRef.new(shape: Namespace, location_name: "Namespace"))
267
305
  Metric.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location_name: "MetricName"))
268
306
  Metric.add_member(:dimensions, Shapes::ShapeRef.new(shape: Dimensions, location_name: "Dimensions"))
@@ -299,6 +337,27 @@ module Aws::CloudWatch
299
337
 
300
338
  MetricData.member = Shapes::ShapeRef.new(shape: MetricDatum)
301
339
 
340
+ MetricDataQueries.member = Shapes::ShapeRef.new(shape: MetricDataQuery)
341
+
342
+ MetricDataQuery.add_member(:id, Shapes::ShapeRef.new(shape: MetricId, required: true, location_name: "Id"))
343
+ MetricDataQuery.add_member(:metric_stat, Shapes::ShapeRef.new(shape: MetricStat, location_name: "MetricStat"))
344
+ MetricDataQuery.add_member(:expression, Shapes::ShapeRef.new(shape: MetricExpression, location_name: "Expression"))
345
+ MetricDataQuery.add_member(:label, Shapes::ShapeRef.new(shape: MetricLabel, location_name: "Label"))
346
+ MetricDataQuery.add_member(:return_data, Shapes::ShapeRef.new(shape: ReturnData, location_name: "ReturnData"))
347
+ MetricDataQuery.struct_class = Types::MetricDataQuery
348
+
349
+ MetricDataResult.add_member(:id, Shapes::ShapeRef.new(shape: MetricId, location_name: "Id"))
350
+ MetricDataResult.add_member(:label, Shapes::ShapeRef.new(shape: MetricLabel, location_name: "Label"))
351
+ MetricDataResult.add_member(:timestamps, Shapes::ShapeRef.new(shape: Timestamps, location_name: "Timestamps"))
352
+ MetricDataResult.add_member(:values, Shapes::ShapeRef.new(shape: DatapointValues, location_name: "Values"))
353
+ MetricDataResult.add_member(:status_code, Shapes::ShapeRef.new(shape: StatusCode, location_name: "StatusCode"))
354
+ MetricDataResult.add_member(:messages, Shapes::ShapeRef.new(shape: MetricDataResultMessages, location_name: "Messages"))
355
+ MetricDataResult.struct_class = Types::MetricDataResult
356
+
357
+ MetricDataResultMessages.member = Shapes::ShapeRef.new(shape: MessageData)
358
+
359
+ MetricDataResults.member = Shapes::ShapeRef.new(shape: MetricDataResult)
360
+
302
361
  MetricDatum.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location_name: "MetricName"))
303
362
  MetricDatum.add_member(:dimensions, Shapes::ShapeRef.new(shape: Dimensions, location_name: "Dimensions"))
304
363
  MetricDatum.add_member(:timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "Timestamp"))
@@ -308,6 +367,12 @@ module Aws::CloudWatch
308
367
  MetricDatum.add_member(:storage_resolution, Shapes::ShapeRef.new(shape: StorageResolution, location_name: "StorageResolution"))
309
368
  MetricDatum.struct_class = Types::MetricDatum
310
369
 
370
+ MetricStat.add_member(:metric, Shapes::ShapeRef.new(shape: Metric, required: true, location_name: "Metric"))
371
+ MetricStat.add_member(:period, Shapes::ShapeRef.new(shape: Period, required: true, location_name: "Period"))
372
+ MetricStat.add_member(:stat, Shapes::ShapeRef.new(shape: Stat, required: true, location_name: "Stat"))
373
+ MetricStat.add_member(:unit, Shapes::ShapeRef.new(shape: StandardUnit, location_name: "Unit"))
374
+ MetricStat.struct_class = Types::MetricStat
375
+
311
376
  Metrics.member = Shapes::ShapeRef.new(shape: Metric)
312
377
 
313
378
  PutDashboardInput.add_member(:dashboard_name, Shapes::ShapeRef.new(shape: DashboardName, required: true, location_name: "DashboardName"))
@@ -358,6 +423,8 @@ module Aws::CloudWatch
358
423
 
359
424
  Statistics.member = Shapes::ShapeRef.new(shape: Statistic)
360
425
 
426
+ Timestamps.member = Shapes::ShapeRef.new(shape: Timestamp)
427
+
361
428
 
362
429
  # @api private
363
430
  API = Seahorse::Model::Api.new.tap do |api|
@@ -457,6 +524,15 @@ module Aws::CloudWatch
457
524
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceFault)
458
525
  end)
459
526
 
527
+ api.add_operation(:get_metric_data, Seahorse::Model::Operation.new.tap do |o|
528
+ o.name = "GetMetricData"
529
+ o.http_method = "POST"
530
+ o.http_request_uri = "/"
531
+ o.input = Shapes::ShapeRef.new(shape: GetMetricDataInput)
532
+ o.output = Shapes::ShapeRef.new(shape: GetMetricDataOutput)
533
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextToken)
534
+ end)
535
+
460
536
  api.add_operation(:get_metric_statistics, Seahorse::Model::Operation.new.tap do |o|
461
537
  o.name = "GetMetricStatistics"
462
538
  o.http_method = "POST"
@@ -281,8 +281,8 @@ module Aws::CloudWatch
281
281
  # @option options [String] :unit
282
282
  # The unit for a given metric. Metrics may be reported in multiple
283
283
  # units. Not supplying a unit results in all units being returned. If
284
- # the metric only ever reports one unit, specifying a unit has no
285
- # effect.
284
+ # you specify only a unit that the metric does not report, the results
285
+ # of the call are null.
286
286
  # @return [Types::GetMetricStatisticsOutput]
287
287
  def get_statistics(options = {})
288
288
  options = options.merge(
@@ -400,7 +400,7 @@ module Aws::CloudWatch
400
400
  #
401
401
  # Be sure to specify 10 or 30 only for metrics that are stored by a
402
402
  # `PutMetricData` call with a `StorageResolution` of 1. If you specify a
403
- # Period of 10 or 30 for a metric that does not have sub-minute
403
+ # period of 10 or 30 for a metric that does not have sub-minute
404
404
  # resolution, the alarm still attempts to gather data at the period rate
405
405
  # that you specify. In this case, it does not receive data for the
406
406
  # attempts that do not correspond to a one-minute data resolution, and
@@ -429,11 +429,23 @@ module Aws::CloudWatch
429
429
  # `INSUFFICIENT DATA` state.
430
430
  # @option options [required, Integer] :evaluation_periods
431
431
  # The number of periods over which data is compared to the specified
432
- # threshold. An alarm's total current evaluation period can be no
433
- # longer than one day, so this number multiplied by `Period` cannot be
434
- # more than 86,400 seconds.
432
+ # threshold. If you are setting an alarm which requires that a number of
433
+ # consecutive data points be breaching to trigger the alarm, this value
434
+ # specifies that number. If you are setting an "M out of N" alarm,
435
+ # this value is the N.
436
+ #
437
+ # An alarm's total current evaluation period can be no longer than one
438
+ # day, so this number multiplied by `Period` cannot be more than 86,400
439
+ # seconds.
435
440
  # @option options [Integer] :datapoints_to_alarm
436
441
  # The number of datapoints that must be breaching to trigger the alarm.
442
+ # This is used only if you are setting an "M out of N" alarm. In that
443
+ # case, this value is the M. For more information, see [Evaluating an
444
+ # Alarm][1] in the *Amazon CloudWatch User Guide*.
445
+ #
446
+ #
447
+ #
448
+ # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarm-evaluation
437
449
  # @option options [required, Float] :threshold
438
450
  # The value against which the specified statistic is compared.
439
451
  # @option options [required, String] :comparison_operator
@@ -516,6 +516,102 @@ module Aws::CloudWatch
516
516
  include Aws::Structure
517
517
  end
518
518
 
519
+ # @note When making an API call, you may pass GetMetricDataInput
520
+ # data as a hash:
521
+ #
522
+ # {
523
+ # metric_data_queries: [ # required
524
+ # {
525
+ # id: "MetricId", # required
526
+ # metric_stat: {
527
+ # metric: { # required
528
+ # namespace: "Namespace",
529
+ # metric_name: "MetricName",
530
+ # dimensions: [
531
+ # {
532
+ # name: "DimensionName", # required
533
+ # value: "DimensionValue", # required
534
+ # },
535
+ # ],
536
+ # },
537
+ # period: 1, # required
538
+ # stat: "Stat", # required
539
+ # 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
540
+ # },
541
+ # expression: "MetricExpression",
542
+ # label: "MetricLabel",
543
+ # return_data: false,
544
+ # },
545
+ # ],
546
+ # start_time: Time.now, # required
547
+ # end_time: Time.now, # required
548
+ # next_token: "NextToken",
549
+ # scan_by: "TimestampDescending", # accepts TimestampDescending, TimestampAscending
550
+ # max_datapoints: 1,
551
+ # }
552
+ #
553
+ # @!attribute [rw] metric_data_queries
554
+ # The metric queries to be returned. A single `GetMetricData` call can
555
+ # include as many as 100 `MetricDataQuery` structures. Each of these
556
+ # structures can specify either a metric to retrieve, or a math
557
+ # expression to perform on retrieved data.
558
+ # @return [Array<Types::MetricDataQuery>]
559
+ #
560
+ # @!attribute [rw] start_time
561
+ # The time stamp indicating the earliest data to be returned.
562
+ # @return [Time]
563
+ #
564
+ # @!attribute [rw] end_time
565
+ # The time stamp indicating the latest data to be returned.
566
+ # @return [Time]
567
+ #
568
+ # @!attribute [rw] next_token
569
+ # Include this value, if it was returned by the previous call, to get
570
+ # the next set of data points.
571
+ # @return [String]
572
+ #
573
+ # @!attribute [rw] scan_by
574
+ # The order in which data points should be returned.
575
+ # `TimestampDescending` returns the newest data first and paginates
576
+ # when the `MaxDatapoints` limit is reached. `TimestampAscending`
577
+ # returns the oldest data first and paginates when the `MaxDatapoints`
578
+ # limit is reached.
579
+ # @return [String]
580
+ #
581
+ # @!attribute [rw] max_datapoints
582
+ # The maximum number of data points the request should return before
583
+ # paginating. If you omit this, the default of 100,800 is used.
584
+ # @return [Integer]
585
+ #
586
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetMetricDataInput AWS API Documentation
587
+ #
588
+ class GetMetricDataInput < Struct.new(
589
+ :metric_data_queries,
590
+ :start_time,
591
+ :end_time,
592
+ :next_token,
593
+ :scan_by,
594
+ :max_datapoints)
595
+ include Aws::Structure
596
+ end
597
+
598
+ # @!attribute [rw] metric_data_results
599
+ # The metrics that are returned, including the metric name, namespace,
600
+ # and dimensions.
601
+ # @return [Array<Types::MetricDataResult>]
602
+ #
603
+ # @!attribute [rw] next_token
604
+ # A token that marks the next batch of returned results.
605
+ # @return [String]
606
+ #
607
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetMetricDataOutput AWS API Documentation
608
+ #
609
+ class GetMetricDataOutput < Struct.new(
610
+ :metric_data_results,
611
+ :next_token)
612
+ include Aws::Structure
613
+ end
614
+
519
615
  # @note When making an API call, you may pass GetMetricStatisticsInput
520
616
  # data as a hash:
521
617
  #
@@ -641,8 +737,8 @@ module Aws::CloudWatch
641
737
  # @!attribute [rw] unit
642
738
  # The unit for a given metric. Metrics may be reported in multiple
643
739
  # units. Not supplying a unit results in all units being returned. If
644
- # the metric only ever reports one unit, specifying a unit has no
645
- # effect.
740
+ # you specify only a unit that the metric does not report, the results
741
+ # of the call are null.
646
742
  # @return [String]
647
743
  #
648
744
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetMetricStatisticsInput AWS API Documentation
@@ -780,8 +876,41 @@ module Aws::CloudWatch
780
876
  include Aws::Structure
781
877
  end
782
878
 
879
+ # A message returned by the `GetMetricData`API, including a code and a
880
+ # description.
881
+ #
882
+ # @!attribute [rw] code
883
+ # The error code or status code associated with the message.
884
+ # @return [String]
885
+ #
886
+ # @!attribute [rw] value
887
+ # The message text.
888
+ # @return [String]
889
+ #
890
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/MessageData AWS API Documentation
891
+ #
892
+ class MessageData < Struct.new(
893
+ :code,
894
+ :value)
895
+ include Aws::Structure
896
+ end
897
+
783
898
  # Represents a specific metric.
784
899
  #
900
+ # @note When making an API call, you may pass Metric
901
+ # data as a hash:
902
+ #
903
+ # {
904
+ # namespace: "Namespace",
905
+ # metric_name: "MetricName",
906
+ # dimensions: [
907
+ # {
908
+ # name: "DimensionName", # required
909
+ # value: "DimensionValue", # required
910
+ # },
911
+ # ],
912
+ # }
913
+ #
785
914
  # @!attribute [rw] namespace
786
915
  # The namespace of the metric.
787
916
  # @return [String]
@@ -954,6 +1083,147 @@ module Aws::CloudWatch
954
1083
  include Aws::Structure
955
1084
  end
956
1085
 
1086
+ # This structure indicates the metric data to return, and whether this
1087
+ # call is just retrieving a batch set of data for one metric, or is
1088
+ # performing a math expression on metric data. A single `GetMetricData`
1089
+ # call can include up to 100 `MetricDataQuery` structures.
1090
+ #
1091
+ # @note When making an API call, you may pass MetricDataQuery
1092
+ # data as a hash:
1093
+ #
1094
+ # {
1095
+ # id: "MetricId", # required
1096
+ # metric_stat: {
1097
+ # metric: { # required
1098
+ # namespace: "Namespace",
1099
+ # metric_name: "MetricName",
1100
+ # dimensions: [
1101
+ # {
1102
+ # name: "DimensionName", # required
1103
+ # value: "DimensionValue", # required
1104
+ # },
1105
+ # ],
1106
+ # },
1107
+ # period: 1, # required
1108
+ # stat: "Stat", # required
1109
+ # 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
1110
+ # },
1111
+ # expression: "MetricExpression",
1112
+ # label: "MetricLabel",
1113
+ # return_data: false,
1114
+ # }
1115
+ #
1116
+ # @!attribute [rw] id
1117
+ # A short name used to tie this structure to the results in the
1118
+ # response. This name must be unique within a single call to
1119
+ # `GetMetricData`. If you are performing math expressions on this set
1120
+ # of data, this name represents that data and can serve as a variable
1121
+ # in the mathematical expression. The valid characters are letters,
1122
+ # numbers, and underscore. The first character must be a lowercase
1123
+ # letter.
1124
+ # @return [String]
1125
+ #
1126
+ # @!attribute [rw] metric_stat
1127
+ # The metric to be returned, along with statistics, period, and units.
1128
+ # Use this parameter only if this structure is performing a data
1129
+ # retrieval and not performing a math expression on the returned data.
1130
+ #
1131
+ # Within one MetricDataQuery structure, you must specify either
1132
+ # `Expression` or `MetricStat` but not both.
1133
+ # @return [Types::MetricStat]
1134
+ #
1135
+ # @!attribute [rw] expression
1136
+ # The math expression to be performed on the returned data, if this
1137
+ # structure is performing a math expression. For more information
1138
+ # about metric math expressions, see [Metric Math Syntax and
1139
+ # Functions][1] in the *Amazon CloudWatch User Guide*.
1140
+ #
1141
+ # Within one MetricDataQuery structure, you must specify either
1142
+ # `Expression` or `MetricStat` but not both.
1143
+ #
1144
+ #
1145
+ #
1146
+ # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html#metric-math-syntax
1147
+ # @return [String]
1148
+ #
1149
+ # @!attribute [rw] label
1150
+ # A human-readable label for this metric or expression. This is
1151
+ # especially useful if this is an expression, so that you know what
1152
+ # the value represents. If the metric or expression is shown in a
1153
+ # CloudWatch dashboard widget, the label is shown. If Label is
1154
+ # omitted, CloudWatch generates a default.
1155
+ # @return [String]
1156
+ #
1157
+ # @!attribute [rw] return_data
1158
+ # Indicates whether to return the time stamps and raw data values of
1159
+ # this metric. If you are performing this call just to do math
1160
+ # expressions and do not also need the raw data returned, you can
1161
+ # specify `False`. If you omit this, the default of `True` is used.
1162
+ # @return [Boolean]
1163
+ #
1164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/MetricDataQuery AWS API Documentation
1165
+ #
1166
+ class MetricDataQuery < Struct.new(
1167
+ :id,
1168
+ :metric_stat,
1169
+ :expression,
1170
+ :label,
1171
+ :return_data)
1172
+ include Aws::Structure
1173
+ end
1174
+
1175
+ # A `GetMetricData` call returns an array of `MetricDataResult`
1176
+ # structures. Each of these structures includes the data points for that
1177
+ # metric, along with the time stamps of those data points and other
1178
+ # identifying information.
1179
+ #
1180
+ # @!attribute [rw] id
1181
+ # The short name you specified to represent this metric.
1182
+ # @return [String]
1183
+ #
1184
+ # @!attribute [rw] label
1185
+ # The human-readable label associated with the data.
1186
+ # @return [String]
1187
+ #
1188
+ # @!attribute [rw] timestamps
1189
+ # The time stamps for the data points, formatted in Unix timestamp
1190
+ # format. The number of time stamps always matches the number of
1191
+ # values and the value for Timestamps\[x\] is Values\[x\].
1192
+ # @return [Array<Time>]
1193
+ #
1194
+ # @!attribute [rw] values
1195
+ # The data points for the metric corresponding to `Timestamps`. The
1196
+ # number of values always matches the number of time stamps and the
1197
+ # time stamp for Values\[x\] is Timestamps\[x\].
1198
+ # @return [Array<Float>]
1199
+ #
1200
+ # @!attribute [rw] status_code
1201
+ # The status of the returned data. `Complete` indicates that all data
1202
+ # points in the requested time range were returned. `PartialData`
1203
+ # means that an incomplete set of data points were returned. You can
1204
+ # use the `NextToken` value that was returned and repeat your request
1205
+ # to get more data points. `NextToken` is not returned if you are
1206
+ # performing a math expression. `InternalError` indicates that an
1207
+ # error occurred. Retry your request using `NextToken`, if present.
1208
+ # @return [String]
1209
+ #
1210
+ # @!attribute [rw] messages
1211
+ # A list of messages with additional information about the data
1212
+ # returned.
1213
+ # @return [Array<Types::MessageData>]
1214
+ #
1215
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/MetricDataResult AWS API Documentation
1216
+ #
1217
+ class MetricDataResult < Struct.new(
1218
+ :id,
1219
+ :label,
1220
+ :timestamps,
1221
+ :values,
1222
+ :status_code,
1223
+ :messages)
1224
+ include Aws::Structure
1225
+ end
1226
+
957
1227
  # Encapsulates the information sent to either create a metric or add new
958
1228
  # values to be aggregated into an existing metric.
959
1229
  #
@@ -1042,6 +1312,56 @@ module Aws::CloudWatch
1042
1312
  include Aws::Structure
1043
1313
  end
1044
1314
 
1315
+ # This structure defines the metric to be returned, along with the
1316
+ # statistics, period, and units.
1317
+ #
1318
+ # @note When making an API call, you may pass MetricStat
1319
+ # data as a hash:
1320
+ #
1321
+ # {
1322
+ # metric: { # required
1323
+ # namespace: "Namespace",
1324
+ # metric_name: "MetricName",
1325
+ # dimensions: [
1326
+ # {
1327
+ # name: "DimensionName", # required
1328
+ # value: "DimensionValue", # required
1329
+ # },
1330
+ # ],
1331
+ # },
1332
+ # period: 1, # required
1333
+ # stat: "Stat", # required
1334
+ # 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
1335
+ # }
1336
+ #
1337
+ # @!attribute [rw] metric
1338
+ # The metric to return, including the metric name, namespace, and
1339
+ # dimensions.
1340
+ # @return [Types::Metric]
1341
+ #
1342
+ # @!attribute [rw] period
1343
+ # The period to use when retrieving the metric.
1344
+ # @return [Integer]
1345
+ #
1346
+ # @!attribute [rw] stat
1347
+ # The statistic to return. It can include any CloudWatch statistic or
1348
+ # extended statistic.
1349
+ # @return [String]
1350
+ #
1351
+ # @!attribute [rw] unit
1352
+ # The unit to use for the returned data points.
1353
+ # @return [String]
1354
+ #
1355
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/MetricStat AWS API Documentation
1356
+ #
1357
+ class MetricStat < Struct.new(
1358
+ :metric,
1359
+ :period,
1360
+ :stat,
1361
+ :unit)
1362
+ include Aws::Structure
1363
+ end
1364
+
1045
1365
  # @note When making an API call, you may pass PutDashboardInput
1046
1366
  # data as a hash:
1047
1367
  #
@@ -1230,7 +1550,7 @@ module Aws::CloudWatch
1230
1550
  #
1231
1551
  # Be sure to specify 10 or 30 only for metrics that are stored by a
1232
1552
  # `PutMetricData` call with a `StorageResolution` of 1. If you specify
1233
- # a Period of 10 or 30 for a metric that does not have sub-minute
1553
+ # a period of 10 or 30 for a metric that does not have sub-minute
1234
1554
  # resolution, the alarm still attempts to gather data at the period
1235
1555
  # rate that you specify. In this case, it does not receive data for
1236
1556
  # the attempts that do not correspond to a one-minute data resolution,
@@ -1264,14 +1584,25 @@ module Aws::CloudWatch
1264
1584
  #
1265
1585
  # @!attribute [rw] evaluation_periods
1266
1586
  # The number of periods over which data is compared to the specified
1267
- # threshold. An alarm's total current evaluation period can be no
1268
- # longer than one day, so this number multiplied by `Period` cannot be
1269
- # more than 86,400 seconds.
1587
+ # threshold. If you are setting an alarm which requires that a number
1588
+ # of consecutive data points be breaching to trigger the alarm, this
1589
+ # value specifies that number. If you are setting an "M out of N"
1590
+ # alarm, this value is the N.
1591
+ #
1592
+ # An alarm's total current evaluation period can be no longer than
1593
+ # one day, so this number multiplied by `Period` cannot be more than
1594
+ # 86,400 seconds.
1270
1595
  # @return [Integer]
1271
1596
  #
1272
1597
  # @!attribute [rw] datapoints_to_alarm
1273
1598
  # The number of datapoints that must be breaching to trigger the
1274
- # alarm.
1599
+ # alarm. This is used only if you are setting an "M out of N" alarm.
1600
+ # In that case, this value is the M. For more information, see
1601
+ # [Evaluating an Alarm][1] in the *Amazon CloudWatch User Guide*.
1602
+ #
1603
+ #
1604
+ #
1605
+ # [1]: http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarm-evaluation
1275
1606
  # @return [Integer]
1276
1607
  #
1277
1608
  # @!attribute [rw] threshold
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cloudwatch
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-19 00:00:00.000000000 Z
11
+ date: 2018-04-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -78,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
78
  version: '0'
79
79
  requirements: []
80
80
  rubyforge_project:
81
- rubygems_version: 2.5.1
81
+ rubygems_version: 2.5.2.2
82
82
  signing_key:
83
83
  specification_version: 4
84
84
  summary: AWS SDK for Ruby - CloudWatch