aws-sdk-cloudwatch 1.132.0 → 1.133.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ce292c30d1372e05dfb387a6bb7c37e1825c35176e09587e525b4287ac09a3c
4
- data.tar.gz: ac63a48801f9fb3d7789891897b3def05904b212df0b747f38a4fea9e1936c74
3
+ metadata.gz: cb444d9630e99161bd2892b7c9c682b4506f3e64b29a1304c34bf4922449bfd9
4
+ data.tar.gz: c6376bf068bdb1300232ead6af70964b5074259291e1b0df6e63e9cd58ad3dbd
5
5
  SHA512:
6
- metadata.gz: fec3ac2f5517bdf365bd646c6add783f05d046ff0d48acdb0706d1fff9317c4c4c6280135d04c9faf0379f08b7435b45a8f74c8b385ee20b1a9ba79ce8738a17
7
- data.tar.gz: '0093db360ab7eefa97d9d6ae9bff45a016d92db32bf23e9034b8163b66b5e3cadf54a5a10c8bed441b3368bf432dcb8b9843d07a2e04bd9f6510bd7497600a81'
6
+ metadata.gz: 6d361c9273b2b22216c93e6427f28b6d65b563e3877f89b40703ad4a2d6a08dbc13f4cc38ec1f47069b0c5c5bd9476cc2d657d920b4664d9d96a89a0c5d249ef
7
+ data.tar.gz: 9c127efef53c702d19ff732b9435eb4ffb29a929f0bc8a7eac4977c50f10cee67adaf13b34d50da6c2d0b5c9bb54abb729e946bca39d02d0f59376be3df6513d
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.133.0 (2026-04-02)
5
+ ------------------
6
+
7
+ * Feature - CloudWatch now supports OTel enrichment to make vended metrics for supported AWS resources queryable via PromQL with resource ARN and tag labels, and PromQL alarms for metrics ingested via the OTLP endpoint with multi-contributor evaluation.
8
+
4
9
  1.132.0 (2026-03-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.132.0
1
+ 1.133.0
@@ -189,6 +189,10 @@ module Aws::CloudWatch
189
189
  # If this parameter is omitted, the default behavior of `missing` is
190
190
  # used.
191
191
  #
192
+ # <note markdown="1"> This parameter is not applicable to PromQL alarms.
193
+ #
194
+ # </note>
195
+ #
192
196
  #
193
197
  #
194
198
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data
@@ -252,6 +256,18 @@ module Aws::CloudWatch
252
256
  data[:state_transitioned_timestamp]
253
257
  end
254
258
 
259
+ # The evaluation criteria for the alarm.
260
+ # @return [Types::EvaluationCriteria]
261
+ def evaluation_criteria
262
+ data[:evaluation_criteria]
263
+ end
264
+
265
+ # The frequency, in seconds, at which the alarm is evaluated.
266
+ # @return [Integer]
267
+ def evaluation_interval
268
+ data[:evaluation_interval]
269
+ end
270
+
255
271
  # @!endgroup
256
272
 
257
273
  # @return [Client]
@@ -1105,6 +1105,10 @@ module Aws::CloudWatch
1105
1105
  # resp.metric_alarms[0].threshold_metric_id #=> String
1106
1106
  # resp.metric_alarms[0].evaluation_state #=> String, one of "PARTIAL_DATA", "EVALUATION_FAILURE", "EVALUATION_ERROR"
1107
1107
  # resp.metric_alarms[0].state_transitioned_timestamp #=> Time
1108
+ # resp.metric_alarms[0].evaluation_criteria.prom_ql_criteria.query #=> String
1109
+ # resp.metric_alarms[0].evaluation_criteria.prom_ql_criteria.pending_period #=> Integer
1110
+ # resp.metric_alarms[0].evaluation_criteria.prom_ql_criteria.recovery_period #=> Integer
1111
+ # resp.metric_alarms[0].evaluation_interval #=> Integer
1108
1112
  # resp.next_token #=> String
1109
1113
  #
1110
1114
  #
@@ -1227,6 +1231,10 @@ module Aws::CloudWatch
1227
1231
  # resp.metric_alarms[0].threshold_metric_id #=> String
1228
1232
  # resp.metric_alarms[0].evaluation_state #=> String, one of "PARTIAL_DATA", "EVALUATION_FAILURE", "EVALUATION_ERROR"
1229
1233
  # resp.metric_alarms[0].state_transitioned_timestamp #=> Time
1234
+ # resp.metric_alarms[0].evaluation_criteria.prom_ql_criteria.query #=> String
1235
+ # resp.metric_alarms[0].evaluation_criteria.prom_ql_criteria.pending_period #=> Integer
1236
+ # resp.metric_alarms[0].evaluation_criteria.prom_ql_criteria.recovery_period #=> Integer
1237
+ # resp.metric_alarms[0].evaluation_interval #=> Integer
1230
1238
  #
1231
1239
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/DescribeAlarmsForMetric AWS API Documentation
1232
1240
  #
@@ -2365,6 +2373,33 @@ module Aws::CloudWatch
2365
2373
  req.send_request(options)
2366
2374
  end
2367
2375
 
2376
+ # Returns the current status of vended metric enrichment for the
2377
+ # account, including whether CloudWatch vended metrics are enriched with
2378
+ # resource ARN and resource tag labels and queryable using PromQL. For
2379
+ # the list of supported resources, see [Supported AWS infrastructure
2380
+ # metrics][1].
2381
+ #
2382
+ #
2383
+ #
2384
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingResourceTagsForTelemetry.html
2385
+ #
2386
+ # @return [Types::GetOTelEnrichmentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2387
+ #
2388
+ # * {Types::GetOTelEnrichmentOutput#status #status} => String
2389
+ #
2390
+ # @example Response structure
2391
+ #
2392
+ # resp.status #=> String, one of "Running", "Stopped"
2393
+ #
2394
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetOTelEnrichment AWS API Documentation
2395
+ #
2396
+ # @overload get_o_tel_enrichment(params = {})
2397
+ # @param [Hash] params ({})
2398
+ def get_o_tel_enrichment(params = {}, options = {})
2399
+ req = build_request(:get_o_tel_enrichment, params)
2400
+ req.send_request(options)
2401
+ end
2402
+
2368
2403
  # Lists alarm mute rules in your Amazon Web Services account and region.
2369
2404
  #
2370
2405
  # You can filter the results by alarm name to find all mute rules
@@ -2758,9 +2793,9 @@ module Aws::CloudWatch
2758
2793
  # "DatabaseConnectionAlarm", you would create an IAM policy with one
2759
2794
  # statement granting `cloudwatch:PutAlarmMuteRule` on the alarm mute
2760
2795
  # rule resource
2761
- # (`arn:aws:cloudwatch:[REGION]:123456789012:alarm-mute:*`), and another
2762
- # statement granting `cloudwatch:PutAlarmMuteRule` on the targeted alarm
2763
- # resources
2796
+ # (`arn:aws:cloudwatch:[REGION]:123456789012:alarm-mute-rule:*`), and
2797
+ # another statement granting `cloudwatch:PutAlarmMuteRule` on the
2798
+ # targeted alarm resources
2764
2799
  # (`arn:aws:cloudwatch:[REGION]:123456789012:alarm:WebServerCPUAlarm`
2765
2800
  # and
2766
2801
  # `arn:aws:cloudwatch:[REGION]:123456789012:alarm:DatabaseConnectionAlarm`).
@@ -3494,18 +3529,19 @@ module Aws::CloudWatch
3494
3529
  end
3495
3530
 
3496
3531
  # Creates or updates an alarm and associates it with the specified
3497
- # metric, metric math expression, anomaly detection model, or Metrics
3498
- # Insights query. For more information about using a Metrics Insights
3499
- # query for an alarm, see [Create alarms on Metrics Insights
3500
- # queries][1].
3532
+ # metric, metric math expression, anomaly detection model, Metrics
3533
+ # Insights query, or PromQL query. For more information about using a
3534
+ # Metrics Insights query for an alarm, see [Create alarms on Metrics
3535
+ # Insights queries][1].
3501
3536
  #
3502
3537
  # Alarms based on anomaly detection models cannot have Auto Scaling
3503
3538
  # actions.
3504
3539
  #
3505
3540
  # When this operation creates an alarm, the alarm state is immediately
3506
- # set to `INSUFFICIENT_DATA`. The alarm is then evaluated and its state
3507
- # is set appropriately. Any actions associated with the new state are
3508
- # then executed.
3541
+ # set to `INSUFFICIENT_DATA`. For PromQL alarms, the alarm state is
3542
+ # instead immediately set to `OK`. The alarm is then evaluated and its
3543
+ # state is set appropriately. Any actions associated with the new state
3544
+ # are then executed.
3509
3545
  #
3510
3546
  # When you update an existing alarm, its state is left unchanged, but
3511
3547
  # the update completely overwrites the previous configuration of the
@@ -3746,8 +3782,8 @@ module Aws::CloudWatch
3746
3782
  #
3747
3783
  # @option params [String] :metric_name
3748
3784
  # The name for the metric associated with the alarm. For each
3749
- # `PutMetricAlarm` operation, you must specify either `MetricName` or a
3750
- # `Metrics` array.
3785
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
3786
+ # `Metrics` array, or an `EvaluationCriteria`.
3751
3787
  #
3752
3788
  # If you are creating an alarm based on a math expression, you cannot
3753
3789
  # specify this parameter, or any of the `Namespace`, `Dimensions`,
@@ -3856,7 +3892,7 @@ module Aws::CloudWatch
3856
3892
  # an incorrect unit that is not published for this metric. Doing so
3857
3893
  # causes the alarm to be stuck in the `INSUFFICIENT DATA` state.
3858
3894
  #
3859
- # @option params [required, Integer] :evaluation_periods
3895
+ # @option params [Integer] :evaluation_periods
3860
3896
  # The number of periods over which data is compared to the specified
3861
3897
  # threshold. If you are setting an alarm that requires that a number of
3862
3898
  # consecutive data points be breaching to trigger the alarm, this value
@@ -3879,7 +3915,7 @@ module Aws::CloudWatch
3879
3915
  # This parameter is required for alarms based on static thresholds, but
3880
3916
  # should not be used for alarms based on anomaly detection models.
3881
3917
  #
3882
- # @option params [required, String] :comparison_operator
3918
+ # @option params [String] :comparison_operator
3883
3919
  # The arithmetic operation to use when comparing the specified statistic
3884
3920
  # and threshold. The specified statistic value is used as the first
3885
3921
  # operand.
@@ -3903,6 +3939,10 @@ module Aws::CloudWatch
3903
3939
  #
3904
3940
  # </note>
3905
3941
  #
3942
+ # <note markdown="1"> This parameter is not applicable to PromQL alarms.
3943
+ #
3944
+ # </note>
3945
+ #
3906
3946
  #
3907
3947
  #
3908
3948
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data
@@ -3925,8 +3965,8 @@ module Aws::CloudWatch
3925
3965
  # @option params [Array<Types::MetricDataQuery>] :metrics
3926
3966
  # An array of `MetricDataQuery` structures that enable you to create an
3927
3967
  # alarm based on the result of a metric math expression. For each
3928
- # `PutMetricAlarm` operation, you must specify either `MetricName` or a
3929
- # `Metrics` array.
3968
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
3969
+ # `Metrics` array, or an `EvaluationCriteria`.
3930
3970
  #
3931
3971
  # Each item in the `Metrics` array either retrieves a metric or performs
3932
3972
  # a math expression.
@@ -3979,6 +4019,30 @@ module Aws::CloudWatch
3979
4019
  # If your alarm uses this parameter, it cannot have Auto Scaling
3980
4020
  # actions.
3981
4021
  #
4022
+ # @option params [Types::EvaluationCriteria] :evaluation_criteria
4023
+ # The evaluation criteria for the alarm. For each `PutMetricAlarm`
4024
+ # operation, you must specify either `MetricName`, a `Metrics` array, or
4025
+ # an `EvaluationCriteria`.
4026
+ #
4027
+ # If you use the `EvaluationCriteria` parameter, you cannot include the
4028
+ # `Namespace`, `MetricName`, `Dimensions`, `Period`, `Unit`,
4029
+ # `Statistic`, `ExtendedStatistic`, `Metrics`, `Threshold`,
4030
+ # `ComparisonOperator`, `ThresholdMetricId`, `EvaluationPeriods`, or
4031
+ # `DatapointsToAlarm` parameters of `PutMetricAlarm` in the same
4032
+ # operation. Instead, all evaluation parameters are defined within this
4033
+ # structure.
4034
+ #
4035
+ # For an example of how to use this parameter, see the **PromQL alarm**
4036
+ # example on this page.
4037
+ #
4038
+ # @option params [Integer] :evaluation_interval
4039
+ # The frequency, in seconds, at which the alarm is evaluated. Valid
4040
+ # values are 10, 20, 30, and any multiple of 60.
4041
+ #
4042
+ # This parameter is required for alarms that use `EvaluationCriteria`,
4043
+ # and cannot be specified for alarms configured with `MetricName` or
4044
+ # `Metrics`.
4045
+ #
3982
4046
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3983
4047
  #
3984
4048
  # @example Request syntax with placeholder values
@@ -4002,10 +4066,10 @@ module Aws::CloudWatch
4002
4066
  # ],
4003
4067
  # period: 1,
4004
4068
  # 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
4005
- # evaluation_periods: 1, # required
4069
+ # evaluation_periods: 1,
4006
4070
  # datapoints_to_alarm: 1,
4007
4071
  # threshold: 1.0,
4008
- # comparison_operator: "GreaterThanOrEqualToThreshold", # required, accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold, LessThanLowerOrGreaterThanUpperThreshold, LessThanLowerThreshold, GreaterThanUpperThreshold
4072
+ # comparison_operator: "GreaterThanOrEqualToThreshold", # accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold, LessThanLowerOrGreaterThanUpperThreshold, LessThanLowerThreshold, GreaterThanUpperThreshold
4009
4073
  # treat_missing_data: "TreatMissingData",
4010
4074
  # evaluate_low_sample_count_percentile: "EvaluateLowSampleCountPercentile",
4011
4075
  # metrics: [
@@ -4040,6 +4104,14 @@ module Aws::CloudWatch
4040
4104
  # },
4041
4105
  # ],
4042
4106
  # threshold_metric_id: "MetricId",
4107
+ # evaluation_criteria: {
4108
+ # prom_ql_criteria: {
4109
+ # query: "Query", # required
4110
+ # pending_period: 1,
4111
+ # recovery_period: 1,
4112
+ # },
4113
+ # },
4114
+ # evaluation_interval: 1,
4043
4115
  # })
4044
4116
  #
4045
4117
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/PutMetricAlarm AWS API Documentation
@@ -4539,6 +4611,33 @@ module Aws::CloudWatch
4539
4611
  req.send_request(options)
4540
4612
  end
4541
4613
 
4614
+ # Enables enrichment and PromQL access for CloudWatch vended metrics for
4615
+ # [supported AWS resources][1] in the account. Once enabled, metrics
4616
+ # that contain a resource identifier dimension (for example, EC2
4617
+ # `CPUUtilization` with an `InstanceId` dimension) are enriched with
4618
+ # resource ARN and resource tag labels and become queryable using
4619
+ # PromQL.
4620
+ #
4621
+ # Before calling this operation, you must enable resource tags on
4622
+ # telemetry for your account. For more information, see [Enable resource
4623
+ # tags on telemetry][2].
4624
+ #
4625
+ #
4626
+ #
4627
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingResourceTagsForTelemetry.html
4628
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/EnableResourceTagsOnTelemetry.html
4629
+ #
4630
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4631
+ #
4632
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StartOTelEnrichment AWS API Documentation
4633
+ #
4634
+ # @overload start_o_tel_enrichment(params = {})
4635
+ # @param [Hash] params ({})
4636
+ def start_o_tel_enrichment(params = {}, options = {})
4637
+ req = build_request(:start_o_tel_enrichment, params)
4638
+ req.send_request(options)
4639
+ end
4640
+
4542
4641
  # Stops the streaming of metrics for one or more of your metric streams.
4543
4642
  #
4544
4643
  # @option params [required, Array<String>] :names
@@ -4565,6 +4664,26 @@ module Aws::CloudWatch
4565
4664
  req.send_request(options)
4566
4665
  end
4567
4666
 
4667
+ # Disables enrichment and PromQL access for CloudWatch vended metrics
4668
+ # for [supported AWS resources][1] in the account. After disabling,
4669
+ # these metrics are no longer enriched with resource ARN and resource
4670
+ # tag labels, and cannot be queried using PromQL.
4671
+ #
4672
+ #
4673
+ #
4674
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingResourceTagsForTelemetry.html
4675
+ #
4676
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4677
+ #
4678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StopOTelEnrichment AWS API Documentation
4679
+ #
4680
+ # @overload stop_o_tel_enrichment(params = {})
4681
+ # @param [Hash] params ({})
4682
+ def stop_o_tel_enrichment(params = {}, options = {})
4683
+ req = build_request(:stop_o_tel_enrichment, params)
4684
+ req.send_request(options)
4685
+ end
4686
+
4568
4687
  # Assigns one or more tags (key-value pairs) to the specified CloudWatch
4569
4688
  # resource. Currently, the only CloudWatch resources that can be tagged
4570
4689
  # are alarms and Contributor Insights rules.
@@ -4683,7 +4802,7 @@ module Aws::CloudWatch
4683
4802
  tracer: tracer
4684
4803
  )
4685
4804
  context[:gem_name] = 'aws-sdk-cloudwatch'
4686
- context[:gem_version] = '1.132.0'
4805
+ context[:gem_version] = '1.133.0'
4687
4806
  Seahorse::Client::Request.new(handlers, context)
4688
4807
  end
4689
4808
 
@@ -32,6 +32,7 @@ module Aws::CloudWatch
32
32
  AlarmName = Shapes::StringShape.new(name: 'AlarmName')
33
33
  AlarmNamePrefix = Shapes::StringShape.new(name: 'AlarmNamePrefix')
34
34
  AlarmNames = Shapes::ListShape.new(name: 'AlarmNames')
35
+ AlarmPromQLCriteria = Shapes::StructureShape.new(name: 'AlarmPromQLCriteria')
35
36
  AlarmRule = Shapes::StringShape.new(name: 'AlarmRule')
36
37
  AlarmType = Shapes::StringShape.new(name: 'AlarmType')
37
38
  AlarmTypes = Shapes::ListShape.new(name: 'AlarmTypes')
@@ -123,6 +124,8 @@ module Aws::CloudWatch
123
124
  EntityMetricDataList = Shapes::ListShape.new(name: 'EntityMetricDataList')
124
125
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
125
126
  EvaluateLowSampleCountPercentile = Shapes::StringShape.new(name: 'EvaluateLowSampleCountPercentile')
127
+ EvaluationCriteria = Shapes::UnionShape.new(name: 'EvaluationCriteria')
128
+ EvaluationInterval = Shapes::IntegerShape.new(name: 'EvaluationInterval')
126
129
  EvaluationPeriods = Shapes::IntegerShape.new(name: 'EvaluationPeriods')
127
130
  EvaluationState = Shapes::StringShape.new(name: 'EvaluationState')
128
131
  ExceptionType = Shapes::StringShape.new(name: 'ExceptionType')
@@ -149,6 +152,8 @@ module Aws::CloudWatch
149
152
  GetMetricStreamOutput = Shapes::StructureShape.new(name: 'GetMetricStreamOutput')
150
153
  GetMetricWidgetImageInput = Shapes::StructureShape.new(name: 'GetMetricWidgetImageInput')
151
154
  GetMetricWidgetImageOutput = Shapes::StructureShape.new(name: 'GetMetricWidgetImageOutput')
155
+ GetOTelEnrichmentInput = Shapes::StructureShape.new(name: 'GetOTelEnrichmentInput')
156
+ GetOTelEnrichmentOutput = Shapes::StructureShape.new(name: 'GetOTelEnrichmentOutput')
152
157
  HistoryData = Shapes::StringShape.new(name: 'HistoryData')
153
158
  HistoryItemType = Shapes::StringShape.new(name: 'HistoryItemType')
154
159
  HistorySummary = Shapes::StringShape.new(name: 'HistorySummary')
@@ -256,9 +261,11 @@ module Aws::CloudWatch
256
261
  Name = Shapes::StringShape.new(name: 'Name')
257
262
  Namespace = Shapes::StringShape.new(name: 'Namespace')
258
263
  NextToken = Shapes::StringShape.new(name: 'NextToken')
264
+ OTelEnrichmentStatus = Shapes::StringShape.new(name: 'OTelEnrichmentStatus')
259
265
  OutputFormat = Shapes::StringShape.new(name: 'OutputFormat')
260
266
  OwningAccounts = Shapes::ListShape.new(name: 'OwningAccounts')
261
267
  PartialFailure = Shapes::StructureShape.new(name: 'PartialFailure')
268
+ PendingPeriod = Shapes::IntegerShape.new(name: 'PendingPeriod')
262
269
  Period = Shapes::IntegerShape.new(name: 'Period')
263
270
  PeriodicSpikes = Shapes::BooleanShape.new(name: 'PeriodicSpikes')
264
271
  PutAlarmMuteRuleInput = Shapes::StructureShape.new(name: 'PutAlarmMuteRuleInput')
@@ -275,8 +282,10 @@ module Aws::CloudWatch
275
282
  PutMetricDataInput = Shapes::StructureShape.new(name: 'PutMetricDataInput')
276
283
  PutMetricStreamInput = Shapes::StructureShape.new(name: 'PutMetricStreamInput')
277
284
  PutMetricStreamOutput = Shapes::StructureShape.new(name: 'PutMetricStreamOutput')
285
+ Query = Shapes::StringShape.new(name: 'Query')
278
286
  Range = Shapes::StructureShape.new(name: 'Range')
279
287
  RecentlyActive = Shapes::StringShape.new(name: 'RecentlyActive')
288
+ RecoveryPeriod = Shapes::IntegerShape.new(name: 'RecoveryPeriod')
280
289
  ResourceId = Shapes::StringShape.new(name: 'ResourceId')
281
290
  ResourceList = Shapes::ListShape.new(name: 'ResourceList')
282
291
  ResourceName = Shapes::StringShape.new(name: 'ResourceName')
@@ -293,6 +302,8 @@ module Aws::CloudWatch
293
302
  StandardUnit = Shapes::StringShape.new(name: 'StandardUnit')
294
303
  StartMetricStreamsInput = Shapes::StructureShape.new(name: 'StartMetricStreamsInput')
295
304
  StartMetricStreamsOutput = Shapes::StructureShape.new(name: 'StartMetricStreamsOutput')
305
+ StartOTelEnrichmentInput = Shapes::StructureShape.new(name: 'StartOTelEnrichmentInput')
306
+ StartOTelEnrichmentOutput = Shapes::StructureShape.new(name: 'StartOTelEnrichmentOutput')
296
307
  Stat = Shapes::StringShape.new(name: 'Stat')
297
308
  StateReason = Shapes::StringShape.new(name: 'StateReason')
298
309
  StateReasonData = Shapes::StringShape.new(name: 'StateReasonData')
@@ -303,6 +314,8 @@ module Aws::CloudWatch
303
314
  StatusCode = Shapes::StringShape.new(name: 'StatusCode')
304
315
  StopMetricStreamsInput = Shapes::StructureShape.new(name: 'StopMetricStreamsInput')
305
316
  StopMetricStreamsOutput = Shapes::StructureShape.new(name: 'StopMetricStreamsOutput')
317
+ StopOTelEnrichmentInput = Shapes::StructureShape.new(name: 'StopOTelEnrichmentInput')
318
+ StopOTelEnrichmentOutput = Shapes::StructureShape.new(name: 'StopOTelEnrichmentOutput')
306
319
  StorageResolution = Shapes::IntegerShape.new(name: 'StorageResolution')
307
320
  StrictEntityValidation = Shapes::BooleanShape.new(name: 'StrictEntityValidation')
308
321
  SuppressorPeriod = Shapes::IntegerShape.new(name: 'SuppressorPeriod')
@@ -356,6 +369,11 @@ module Aws::CloudWatch
356
369
 
357
370
  AlarmNames.member = Shapes::ShapeRef.new(shape: AlarmName)
358
371
 
372
+ AlarmPromQLCriteria.add_member(:query, Shapes::ShapeRef.new(shape: Query, required: true, location_name: "Query"))
373
+ AlarmPromQLCriteria.add_member(:pending_period, Shapes::ShapeRef.new(shape: PendingPeriod, location_name: "PendingPeriod"))
374
+ AlarmPromQLCriteria.add_member(:recovery_period, Shapes::ShapeRef.new(shape: RecoveryPeriod, location_name: "RecoveryPeriod"))
375
+ AlarmPromQLCriteria.struct_class = Types::AlarmPromQLCriteria
376
+
359
377
  AlarmTypes.member = Shapes::ShapeRef.new(shape: AlarmType)
360
378
 
361
379
  AnomalyDetector.add_member(:namespace, Shapes::ShapeRef.new(shape: Namespace, deprecated: true, location_name: "Namespace", metadata: {"deprecatedMessage" => "Use SingleMetricAnomalyDetector.Namespace property."}))
@@ -603,6 +621,12 @@ module Aws::CloudWatch
603
621
 
604
622
  EntityMetricDataList.member = Shapes::ShapeRef.new(shape: EntityMetricData)
605
623
 
624
+ EvaluationCriteria.add_member(:prom_ql_criteria, Shapes::ShapeRef.new(shape: AlarmPromQLCriteria, location_name: "PromQLCriteria"))
625
+ EvaluationCriteria.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
626
+ EvaluationCriteria.add_member_subclass(:prom_ql_criteria, Types::EvaluationCriteria::PromQlCriteria)
627
+ EvaluationCriteria.add_member_subclass(:unknown, Types::EvaluationCriteria::Unknown)
628
+ EvaluationCriteria.struct_class = Types::EvaluationCriteria
629
+
606
630
  ExtendedStatistics.member = Shapes::ShapeRef.new(shape: ExtendedStatistic)
607
631
 
608
632
  GetAlarmMuteRuleInput.add_member(:alarm_mute_rule_name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "AlarmMuteRuleName"))
@@ -698,6 +722,11 @@ module Aws::CloudWatch
698
722
  GetMetricWidgetImageOutput.add_member(:metric_widget_image, Shapes::ShapeRef.new(shape: MetricWidgetImage, location_name: "MetricWidgetImage"))
699
723
  GetMetricWidgetImageOutput.struct_class = Types::GetMetricWidgetImageOutput
700
724
 
725
+ GetOTelEnrichmentInput.struct_class = Types::GetOTelEnrichmentInput
726
+
727
+ GetOTelEnrichmentOutput.add_member(:status, Shapes::ShapeRef.new(shape: OTelEnrichmentStatus, required: true, location_name: "Status"))
728
+ GetOTelEnrichmentOutput.struct_class = Types::GetOTelEnrichmentOutput
729
+
701
730
  InsightRule.add_member(:name, Shapes::ShapeRef.new(shape: InsightRuleName, required: true, location_name: "Name"))
702
731
  InsightRule.add_member(:state, Shapes::ShapeRef.new(shape: InsightRuleState, required: true, location_name: "State"))
703
732
  InsightRule.add_member(:schema, Shapes::ShapeRef.new(shape: InsightRuleSchema, required: true, location_name: "Schema"))
@@ -875,6 +904,8 @@ module Aws::CloudWatch
875
904
  MetricAlarm.add_member(:threshold_metric_id, Shapes::ShapeRef.new(shape: MetricId, location_name: "ThresholdMetricId"))
876
905
  MetricAlarm.add_member(:evaluation_state, Shapes::ShapeRef.new(shape: EvaluationState, location_name: "EvaluationState"))
877
906
  MetricAlarm.add_member(:state_transitioned_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "StateTransitionedTimestamp"))
907
+ MetricAlarm.add_member(:evaluation_criteria, Shapes::ShapeRef.new(shape: EvaluationCriteria, location_name: "EvaluationCriteria"))
908
+ MetricAlarm.add_member(:evaluation_interval, Shapes::ShapeRef.new(shape: EvaluationInterval, location_name: "EvaluationInterval"))
878
909
  MetricAlarm.struct_class = Types::MetricAlarm
879
910
 
880
911
  MetricAlarms.member = Shapes::ShapeRef.new(shape: MetricAlarm)
@@ -1049,15 +1080,17 @@ module Aws::CloudWatch
1049
1080
  PutMetricAlarmInput.add_member(:dimensions, Shapes::ShapeRef.new(shape: Dimensions, location_name: "Dimensions"))
1050
1081
  PutMetricAlarmInput.add_member(:period, Shapes::ShapeRef.new(shape: Period, location_name: "Period"))
1051
1082
  PutMetricAlarmInput.add_member(:unit, Shapes::ShapeRef.new(shape: StandardUnit, location_name: "Unit"))
1052
- PutMetricAlarmInput.add_member(:evaluation_periods, Shapes::ShapeRef.new(shape: EvaluationPeriods, required: true, location_name: "EvaluationPeriods"))
1083
+ PutMetricAlarmInput.add_member(:evaluation_periods, Shapes::ShapeRef.new(shape: EvaluationPeriods, location_name: "EvaluationPeriods"))
1053
1084
  PutMetricAlarmInput.add_member(:datapoints_to_alarm, Shapes::ShapeRef.new(shape: DatapointsToAlarm, location_name: "DatapointsToAlarm"))
1054
1085
  PutMetricAlarmInput.add_member(:threshold, Shapes::ShapeRef.new(shape: Threshold, location_name: "Threshold"))
1055
- PutMetricAlarmInput.add_member(:comparison_operator, Shapes::ShapeRef.new(shape: ComparisonOperator, required: true, location_name: "ComparisonOperator"))
1086
+ PutMetricAlarmInput.add_member(:comparison_operator, Shapes::ShapeRef.new(shape: ComparisonOperator, location_name: "ComparisonOperator"))
1056
1087
  PutMetricAlarmInput.add_member(:treat_missing_data, Shapes::ShapeRef.new(shape: TreatMissingData, location_name: "TreatMissingData"))
1057
1088
  PutMetricAlarmInput.add_member(:evaluate_low_sample_count_percentile, Shapes::ShapeRef.new(shape: EvaluateLowSampleCountPercentile, location_name: "EvaluateLowSampleCountPercentile"))
1058
1089
  PutMetricAlarmInput.add_member(:metrics, Shapes::ShapeRef.new(shape: MetricDataQueries, location_name: "Metrics"))
1059
1090
  PutMetricAlarmInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
1060
1091
  PutMetricAlarmInput.add_member(:threshold_metric_id, Shapes::ShapeRef.new(shape: MetricId, location_name: "ThresholdMetricId"))
1092
+ PutMetricAlarmInput.add_member(:evaluation_criteria, Shapes::ShapeRef.new(shape: EvaluationCriteria, location_name: "EvaluationCriteria"))
1093
+ PutMetricAlarmInput.add_member(:evaluation_interval, Shapes::ShapeRef.new(shape: EvaluationInterval, location_name: "EvaluationInterval"))
1061
1094
  PutMetricAlarmInput.struct_class = Types::PutMetricAlarmInput
1062
1095
 
1063
1096
  PutMetricDataInput.add_member(:namespace, Shapes::ShapeRef.new(shape: Namespace, required: true, location_name: "Namespace"))
@@ -1119,6 +1152,10 @@ module Aws::CloudWatch
1119
1152
 
1120
1153
  StartMetricStreamsOutput.struct_class = Types::StartMetricStreamsOutput
1121
1154
 
1155
+ StartOTelEnrichmentInput.struct_class = Types::StartOTelEnrichmentInput
1156
+
1157
+ StartOTelEnrichmentOutput.struct_class = Types::StartOTelEnrichmentOutput
1158
+
1122
1159
  StatisticSet.add_member(:sample_count, Shapes::ShapeRef.new(shape: DatapointValue, required: true, location_name: "SampleCount"))
1123
1160
  StatisticSet.add_member(:sum, Shapes::ShapeRef.new(shape: DatapointValue, required: true, location_name: "Sum"))
1124
1161
  StatisticSet.add_member(:minimum, Shapes::ShapeRef.new(shape: DatapointValue, required: true, location_name: "Minimum"))
@@ -1132,6 +1169,10 @@ module Aws::CloudWatch
1132
1169
 
1133
1170
  StopMetricStreamsOutput.struct_class = Types::StopMetricStreamsOutput
1134
1171
 
1172
+ StopOTelEnrichmentInput.struct_class = Types::StopOTelEnrichmentInput
1173
+
1174
+ StopOTelEnrichmentOutput.struct_class = Types::StopOTelEnrichmentOutput
1175
+
1135
1176
  Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
1136
1177
  Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "Value"))
1137
1178
  Tag.struct_class = Types::Tag
@@ -1439,6 +1480,14 @@ module Aws::CloudWatch
1439
1480
  o.output = Shapes::ShapeRef.new(shape: GetMetricWidgetImageOutput)
1440
1481
  end)
1441
1482
 
1483
+ api.add_operation(:get_o_tel_enrichment, Seahorse::Model::Operation.new.tap do |o|
1484
+ o.name = "GetOTelEnrichment"
1485
+ o.http_method = "POST"
1486
+ o.http_request_uri = "/"
1487
+ o.input = Shapes::ShapeRef.new(shape: GetOTelEnrichmentInput)
1488
+ o.output = Shapes::ShapeRef.new(shape: GetOTelEnrichmentOutput)
1489
+ end)
1490
+
1442
1491
  api.add_operation(:list_alarm_mute_rules, Seahorse::Model::Operation.new.tap do |o|
1443
1492
  o.name = "ListAlarmMuteRules"
1444
1493
  o.http_method = "POST"
@@ -1652,6 +1701,14 @@ module Aws::CloudWatch
1652
1701
  o.errors << Shapes::ShapeRef.new(shape: MissingRequiredParameterException)
1653
1702
  end)
1654
1703
 
1704
+ api.add_operation(:start_o_tel_enrichment, Seahorse::Model::Operation.new.tap do |o|
1705
+ o.name = "StartOTelEnrichment"
1706
+ o.http_method = "POST"
1707
+ o.http_request_uri = "/"
1708
+ o.input = Shapes::ShapeRef.new(shape: StartOTelEnrichmentInput)
1709
+ o.output = Shapes::ShapeRef.new(shape: StartOTelEnrichmentOutput)
1710
+ end)
1711
+
1655
1712
  api.add_operation(:stop_metric_streams, Seahorse::Model::Operation.new.tap do |o|
1656
1713
  o.name = "StopMetricStreams"
1657
1714
  o.http_method = "POST"
@@ -1663,6 +1720,14 @@ module Aws::CloudWatch
1663
1720
  o.errors << Shapes::ShapeRef.new(shape: MissingRequiredParameterException)
1664
1721
  end)
1665
1722
 
1723
+ api.add_operation(:stop_o_tel_enrichment, Seahorse::Model::Operation.new.tap do |o|
1724
+ o.name = "StopOTelEnrichment"
1725
+ o.http_method = "POST"
1726
+ o.http_request_uri = "/"
1727
+ o.input = Shapes::ShapeRef.new(shape: StopOTelEnrichmentInput)
1728
+ o.output = Shapes::ShapeRef.new(shape: StopOTelEnrichmentOutput)
1729
+ end)
1730
+
1666
1731
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1667
1732
  o.name = "TagResource"
1668
1733
  o.http_method = "POST"
@@ -329,10 +329,10 @@ module Aws::CloudWatch
329
329
  # ],
330
330
  # period: 1,
331
331
  # 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
332
- # evaluation_periods: 1, # required
332
+ # evaluation_periods: 1,
333
333
  # datapoints_to_alarm: 1,
334
334
  # threshold: 1.0,
335
- # comparison_operator: "GreaterThanOrEqualToThreshold", # required, accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold, LessThanLowerOrGreaterThanUpperThreshold, LessThanLowerThreshold, GreaterThanUpperThreshold
335
+ # comparison_operator: "GreaterThanOrEqualToThreshold", # accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold, LessThanLowerOrGreaterThanUpperThreshold, LessThanLowerThreshold, GreaterThanUpperThreshold
336
336
  # treat_missing_data: "TreatMissingData",
337
337
  # evaluate_low_sample_count_percentile: "EvaluateLowSampleCountPercentile",
338
338
  # metrics: [
@@ -367,6 +367,14 @@ module Aws::CloudWatch
367
367
  # },
368
368
  # ],
369
369
  # threshold_metric_id: "MetricId",
370
+ # evaluation_criteria: {
371
+ # prom_ql_criteria: {
372
+ # query: "Query", # required
373
+ # pending_period: 1,
374
+ # recovery_period: 1,
375
+ # },
376
+ # },
377
+ # evaluation_interval: 1,
370
378
  # })
371
379
  # @param [Hash] options ({})
372
380
  # @option options [required, String] :alarm_name
@@ -643,7 +651,7 @@ module Aws::CloudWatch
643
651
  # We recommend omitting `Unit` so that you don't inadvertently specify
644
652
  # an incorrect unit that is not published for this metric. Doing so
645
653
  # causes the alarm to be stuck in the `INSUFFICIENT DATA` state.
646
- # @option options [required, Integer] :evaluation_periods
654
+ # @option options [Integer] :evaluation_periods
647
655
  # The number of periods over which data is compared to the specified
648
656
  # threshold. If you are setting an alarm that requires that a number of
649
657
  # consecutive data points be breaching to trigger the alarm, this value
@@ -663,7 +671,7 @@ module Aws::CloudWatch
663
671
  #
664
672
  # This parameter is required for alarms based on static thresholds, but
665
673
  # should not be used for alarms based on anomaly detection models.
666
- # @option options [required, String] :comparison_operator
674
+ # @option options [String] :comparison_operator
667
675
  # The arithmetic operation to use when comparing the specified statistic
668
676
  # and threshold. The specified statistic value is used as the first
669
677
  # operand.
@@ -686,6 +694,10 @@ module Aws::CloudWatch
686
694
  #
687
695
  # </note>
688
696
  #
697
+ # <note markdown="1"> This parameter is not applicable to PromQL alarms.
698
+ #
699
+ # </note>
700
+ #
689
701
  #
690
702
  #
691
703
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data
@@ -706,8 +718,8 @@ module Aws::CloudWatch
706
718
  # @option options [Array<Types::MetricDataQuery>] :metrics
707
719
  # An array of `MetricDataQuery` structures that enable you to create an
708
720
  # alarm based on the result of a metric math expression. For each
709
- # `PutMetricAlarm` operation, you must specify either `MetricName` or a
710
- # `Metrics` array.
721
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
722
+ # `Metrics` array, or an `EvaluationCriteria`.
711
723
  #
712
724
  # Each item in the `Metrics` array either retrieves a metric or performs
713
725
  # a math expression.
@@ -757,6 +769,28 @@ module Aws::CloudWatch
757
769
  #
758
770
  # If your alarm uses this parameter, it cannot have Auto Scaling
759
771
  # actions.
772
+ # @option options [Types::EvaluationCriteria] :evaluation_criteria
773
+ # The evaluation criteria for the alarm. For each `PutMetricAlarm`
774
+ # operation, you must specify either `MetricName`, a `Metrics` array, or
775
+ # an `EvaluationCriteria`.
776
+ #
777
+ # If you use the `EvaluationCriteria` parameter, you cannot include the
778
+ # `Namespace`, `MetricName`, `Dimensions`, `Period`, `Unit`,
779
+ # `Statistic`, `ExtendedStatistic`, `Metrics`, `Threshold`,
780
+ # `ComparisonOperator`, `ThresholdMetricId`, `EvaluationPeriods`, or
781
+ # `DatapointsToAlarm` parameters of `PutMetricAlarm` in the same
782
+ # operation. Instead, all evaluation parameters are defined within this
783
+ # structure.
784
+ #
785
+ # For an example of how to use this parameter, see the **PromQL alarm**
786
+ # example on this page.
787
+ # @option options [Integer] :evaluation_interval
788
+ # The frequency, in seconds, at which the alarm is evaluated. Valid
789
+ # values are 10, 20, 30, and any multiple of 60.
790
+ #
791
+ # This parameter is required for alarms that use `EvaluationCriteria`,
792
+ # and cannot be specified for alarms configured with `MetricName` or
793
+ # `Metrics`.
760
794
  # @return [Alarm]
761
795
  def put_alarm(options = {})
762
796
  options = options.merge(
@@ -135,6 +135,36 @@ module Aws::CloudWatch
135
135
  include Aws::Structure
136
136
  end
137
137
 
138
+ # Contains the configuration that determines how a PromQL alarm
139
+ # evaluates its contributors, including the query to run and the
140
+ # durations that define when contributors transition between states.
141
+ #
142
+ # @!attribute [rw] query
143
+ # The PromQL query that the alarm evaluates. The query must return a
144
+ # result of vector type. Each entry in the vector result represents an
145
+ # alarm contributor.
146
+ # @return [String]
147
+ #
148
+ # @!attribute [rw] pending_period
149
+ # The duration, in seconds, that a contributor must be continuously
150
+ # breaching before it transitions to the `ALARM` state.
151
+ # @return [Integer]
152
+ #
153
+ # @!attribute [rw] recovery_period
154
+ # The duration, in seconds, that a contributor must continuously not
155
+ # be breaching before it transitions back to the `OK` state.
156
+ # @return [Integer]
157
+ #
158
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/AlarmPromQLCriteria AWS API Documentation
159
+ #
160
+ class AlarmPromQLCriteria < Struct.new(
161
+ :query,
162
+ :pending_period,
163
+ :recovery_period)
164
+ SENSITIVE = []
165
+ include Aws::Structure
166
+ end
167
+
138
168
  # An anomaly detection model associated with a particular CloudWatch
139
169
  # metric, statistic, or metric math expression. You can use the model to
140
170
  # display a band of expected, normal values when the metric is graphed.
@@ -1294,6 +1324,30 @@ module Aws::CloudWatch
1294
1324
  include Aws::Structure
1295
1325
  end
1296
1326
 
1327
+ # The evaluation criteria for an alarm. This is a union type that
1328
+ # currently supports `PromQLCriteria`.
1329
+ #
1330
+ # @note EvaluationCriteria is a union - when making an API calls you must set exactly one of the members.
1331
+ #
1332
+ # @note EvaluationCriteria is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of EvaluationCriteria corresponding to the set member.
1333
+ #
1334
+ # @!attribute [rw] prom_ql_criteria
1335
+ # The PromQL criteria for the alarm evaluation.
1336
+ # @return [Types::AlarmPromQLCriteria]
1337
+ #
1338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/EvaluationCriteria AWS API Documentation
1339
+ #
1340
+ class EvaluationCriteria < Struct.new(
1341
+ :prom_ql_criteria,
1342
+ :unknown)
1343
+ SENSITIVE = []
1344
+ include Aws::Structure
1345
+ include Aws::Structure::Union
1346
+
1347
+ class PromQlCriteria < EvaluationCriteria; end
1348
+ class Unknown < EvaluationCriteria; end
1349
+ end
1350
+
1297
1351
  # @!attribute [rw] alarm_mute_rule_name
1298
1352
  # The name of the alarm mute rule to retrieve.
1299
1353
  # @return [String]
@@ -1986,6 +2040,26 @@ module Aws::CloudWatch
1986
2040
  include Aws::Structure
1987
2041
  end
1988
2042
 
2043
+ # @api private
2044
+ #
2045
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetOTelEnrichmentInput AWS API Documentation
2046
+ #
2047
+ class GetOTelEnrichmentInput < Aws::EmptyStructure; end
2048
+
2049
+ # @!attribute [rw] status
2050
+ # The status of OTel enrichment for the account. Valid values are
2051
+ # `Running` (enrichment is enabled) and `Stopped` (enrichment is
2052
+ # disabled).
2053
+ # @return [String]
2054
+ #
2055
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/GetOTelEnrichmentOutput AWS API Documentation
2056
+ #
2057
+ class GetOTelEnrichmentOutput < Struct.new(
2058
+ :status)
2059
+ SENSITIVE = []
2060
+ include Aws::Structure
2061
+ end
2062
+
1989
2063
  # This structure contains the definition for a Contributor Insights
1990
2064
  # rule. For more information about this rule, see[ Using Constributor
1991
2065
  # Insights to analyze high-cardinality data][1] in the *Amazon
@@ -2867,6 +2941,10 @@ module Aws::CloudWatch
2867
2941
  # If this parameter is omitted, the default behavior of `missing` is
2868
2942
  # used.
2869
2943
  #
2944
+ # <note markdown="1"> This parameter is not applicable to PromQL alarms.
2945
+ #
2946
+ # </note>
2947
+ #
2870
2948
  #
2871
2949
  #
2872
2950
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data
@@ -2919,6 +2997,14 @@ module Aws::CloudWatch
2919
2997
  # changed.
2920
2998
  # @return [Time]
2921
2999
  #
3000
+ # @!attribute [rw] evaluation_criteria
3001
+ # The evaluation criteria for the alarm.
3002
+ # @return [Types::EvaluationCriteria]
3003
+ #
3004
+ # @!attribute [rw] evaluation_interval
3005
+ # The frequency, in seconds, at which the alarm is evaluated.
3006
+ # @return [Integer]
3007
+ #
2922
3008
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/MetricAlarm AWS API Documentation
2923
3009
  #
2924
3010
  class MetricAlarm < Struct.new(
@@ -2950,7 +3036,9 @@ module Aws::CloudWatch
2950
3036
  :metrics,
2951
3037
  :threshold_metric_id,
2952
3038
  :evaluation_state,
2953
- :state_transitioned_timestamp)
3039
+ :state_transitioned_timestamp,
3040
+ :evaluation_criteria,
3041
+ :evaluation_interval)
2954
3042
  SENSITIVE = []
2955
3043
  include Aws::Structure
2956
3044
  end
@@ -4289,8 +4377,8 @@ module Aws::CloudWatch
4289
4377
  #
4290
4378
  # @!attribute [rw] metric_name
4291
4379
  # The name for the metric associated with the alarm. For each
4292
- # `PutMetricAlarm` operation, you must specify either `MetricName` or
4293
- # a `Metrics` array.
4380
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
4381
+ # `Metrics` array, or an `EvaluationCriteria`.
4294
4382
  #
4295
4383
  # If you are creating an alarm based on a math expression, you cannot
4296
4384
  # specify this parameter, or any of the `Namespace`, `Dimensions`,
@@ -4460,6 +4548,10 @@ module Aws::CloudWatch
4460
4548
  #
4461
4549
  # </note>
4462
4550
  #
4551
+ # <note markdown="1"> This parameter is not applicable to PromQL alarms.
4552
+ #
4553
+ # </note>
4554
+ #
4463
4555
  #
4464
4556
  #
4465
4557
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data
@@ -4484,8 +4576,8 @@ module Aws::CloudWatch
4484
4576
  # @!attribute [rw] metrics
4485
4577
  # An array of `MetricDataQuery` structures that enable you to create
4486
4578
  # an alarm based on the result of a metric math expression. For each
4487
- # `PutMetricAlarm` operation, you must specify either `MetricName` or
4488
- # a `Metrics` array.
4579
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
4580
+ # `Metrics` array, or an `EvaluationCriteria`.
4489
4581
  #
4490
4582
  # Each item in the `Metrics` array either retrieves a metric or
4491
4583
  # performs a math expression.
@@ -4542,6 +4634,32 @@ module Aws::CloudWatch
4542
4634
  # actions.
4543
4635
  # @return [String]
4544
4636
  #
4637
+ # @!attribute [rw] evaluation_criteria
4638
+ # The evaluation criteria for the alarm. For each `PutMetricAlarm`
4639
+ # operation, you must specify either `MetricName`, a `Metrics` array,
4640
+ # or an `EvaluationCriteria`.
4641
+ #
4642
+ # If you use the `EvaluationCriteria` parameter, you cannot include
4643
+ # the `Namespace`, `MetricName`, `Dimensions`, `Period`, `Unit`,
4644
+ # `Statistic`, `ExtendedStatistic`, `Metrics`, `Threshold`,
4645
+ # `ComparisonOperator`, `ThresholdMetricId`, `EvaluationPeriods`, or
4646
+ # `DatapointsToAlarm` parameters of `PutMetricAlarm` in the same
4647
+ # operation. Instead, all evaluation parameters are defined within
4648
+ # this structure.
4649
+ #
4650
+ # For an example of how to use this parameter, see the **PromQL
4651
+ # alarm** example on this page.
4652
+ # @return [Types::EvaluationCriteria]
4653
+ #
4654
+ # @!attribute [rw] evaluation_interval
4655
+ # The frequency, in seconds, at which the alarm is evaluated. Valid
4656
+ # values are 10, 20, 30, and any multiple of 60.
4657
+ #
4658
+ # This parameter is required for alarms that use `EvaluationCriteria`,
4659
+ # and cannot be specified for alarms configured with `MetricName` or
4660
+ # `Metrics`.
4661
+ # @return [Integer]
4662
+ #
4545
4663
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/PutMetricAlarmInput AWS API Documentation
4546
4664
  #
4547
4665
  class PutMetricAlarmInput < Struct.new(
@@ -4566,7 +4684,9 @@ module Aws::CloudWatch
4566
4684
  :evaluate_low_sample_count_percentile,
4567
4685
  :metrics,
4568
4686
  :tags,
4569
- :threshold_metric_id)
4687
+ :threshold_metric_id,
4688
+ :evaluation_criteria,
4689
+ :evaluation_interval)
4570
4690
  SENSITIVE = []
4571
4691
  include Aws::Structure
4572
4692
  end
@@ -5057,6 +5177,16 @@ module Aws::CloudWatch
5057
5177
  #
5058
5178
  class StartMetricStreamsOutput < Aws::EmptyStructure; end
5059
5179
 
5180
+ # @api private
5181
+ #
5182
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StartOTelEnrichmentInput AWS API Documentation
5183
+ #
5184
+ class StartOTelEnrichmentInput < Aws::EmptyStructure; end
5185
+
5186
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StartOTelEnrichmentOutput AWS API Documentation
5187
+ #
5188
+ class StartOTelEnrichmentOutput < Aws::EmptyStructure; end
5189
+
5060
5190
  # Represents a set of statistics that describes a specific metric.
5061
5191
  #
5062
5192
  # @!attribute [rw] sample_count
@@ -5107,6 +5237,16 @@ module Aws::CloudWatch
5107
5237
  #
5108
5238
  class StopMetricStreamsOutput < Aws::EmptyStructure; end
5109
5239
 
5240
+ # @api private
5241
+ #
5242
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StopOTelEnrichmentInput AWS API Documentation
5243
+ #
5244
+ class StopOTelEnrichmentInput < Aws::EmptyStructure; end
5245
+
5246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StopOTelEnrichmentOutput AWS API Documentation
5247
+ #
5248
+ class StopOTelEnrichmentOutput < Aws::EmptyStructure; end
5249
+
5110
5250
  # A key-value pair associated with a CloudWatch resource.
5111
5251
  #
5112
5252
  # @!attribute [rw] key
@@ -58,7 +58,7 @@ module Aws::CloudWatch
58
58
  autoload :CompositeAlarm, 'aws-sdk-cloudwatch/composite_alarm'
59
59
  autoload :Metric, 'aws-sdk-cloudwatch/metric'
60
60
 
61
- GEM_VERSION = '1.132.0'
61
+ GEM_VERSION = '1.133.0'
62
62
 
63
63
  end
64
64
 
data/sig/alarm.rbs CHANGED
@@ -102,6 +102,12 @@ module Aws
102
102
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CloudWatch/Alarm.html#state_transitioned_timestamp-instance_method
103
103
  def state_transitioned_timestamp: () -> ::Time
104
104
 
105
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CloudWatch/Alarm.html#evaluation_criteria-instance_method
106
+ def evaluation_criteria: () -> Types::EvaluationCriteria
107
+
108
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CloudWatch/Alarm.html#evaluation_interval-instance_method
109
+ def evaluation_interval: () -> ::Integer
110
+
105
111
  def client: () -> Client
106
112
 
107
113
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CloudWatch/Alarm.html#load-instance_method
data/sig/client.rbs CHANGED
@@ -464,6 +464,15 @@ module Aws
464
464
  ) -> _GetMetricWidgetImageResponseSuccess
465
465
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetMetricWidgetImageResponseSuccess
466
466
 
467
+ interface _GetOTelEnrichmentResponseSuccess
468
+ include ::Seahorse::Client::_ResponseSuccess[Types::GetOTelEnrichmentOutput]
469
+ def status: () -> ("Running" | "Stopped")
470
+ end
471
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CloudWatch/Client.html#get_o_tel_enrichment-instance_method
472
+ def get_o_tel_enrichment: (
473
+ ) -> _GetOTelEnrichmentResponseSuccess
474
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetOTelEnrichmentResponseSuccess
475
+
467
476
  interface _ListAlarmMuteRulesResponseSuccess
468
477
  include ::Seahorse::Client::_ResponseSuccess[Types::ListAlarmMuteRulesOutput]
469
478
  def alarm_mute_rule_summaries: () -> ::Array[Types::AlarmMuteRuleSummary]
@@ -732,10 +741,10 @@ module Aws
732
741
  ],
733
742
  ?period: ::Integer,
734
743
  ?unit: ("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"),
735
- evaluation_periods: ::Integer,
744
+ ?evaluation_periods: ::Integer,
736
745
  ?datapoints_to_alarm: ::Integer,
737
746
  ?threshold: ::Float,
738
- comparison_operator: ("GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold" | "LessThanLowerOrGreaterThanUpperThreshold" | "LessThanLowerThreshold" | "GreaterThanUpperThreshold"),
747
+ ?comparison_operator: ("GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold" | "LessThanLowerOrGreaterThanUpperThreshold" | "LessThanLowerThreshold" | "GreaterThanUpperThreshold"),
739
748
  ?treat_missing_data: ::String,
740
749
  ?evaluate_low_sample_count_percentile: ::String,
741
750
  ?metrics: Array[
@@ -769,7 +778,15 @@ module Aws
769
778
  value: ::String
770
779
  },
771
780
  ],
772
- ?threshold_metric_id: ::String
781
+ ?threshold_metric_id: ::String,
782
+ ?evaluation_criteria: {
783
+ prom_ql_criteria: {
784
+ query: ::String,
785
+ pending_period: ::Integer?,
786
+ recovery_period: ::Integer?
787
+ }?
788
+ },
789
+ ?evaluation_interval: ::Integer
773
790
  ) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
774
791
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
775
792
 
@@ -895,6 +912,14 @@ module Aws
895
912
  ) -> _StartMetricStreamsResponseSuccess
896
913
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StartMetricStreamsResponseSuccess
897
914
 
915
+ interface _StartOTelEnrichmentResponseSuccess
916
+ include ::Seahorse::Client::_ResponseSuccess[Types::StartOTelEnrichmentOutput]
917
+ end
918
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CloudWatch/Client.html#start_o_tel_enrichment-instance_method
919
+ def start_o_tel_enrichment: (
920
+ ) -> _StartOTelEnrichmentResponseSuccess
921
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StartOTelEnrichmentResponseSuccess
922
+
898
923
  interface _StopMetricStreamsResponseSuccess
899
924
  include ::Seahorse::Client::_ResponseSuccess[Types::StopMetricStreamsOutput]
900
925
  end
@@ -904,6 +929,14 @@ module Aws
904
929
  ) -> _StopMetricStreamsResponseSuccess
905
930
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StopMetricStreamsResponseSuccess
906
931
 
932
+ interface _StopOTelEnrichmentResponseSuccess
933
+ include ::Seahorse::Client::_ResponseSuccess[Types::StopOTelEnrichmentOutput]
934
+ end
935
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CloudWatch/Client.html#stop_o_tel_enrichment-instance_method
936
+ def stop_o_tel_enrichment: (
937
+ ) -> _StopOTelEnrichmentResponseSuccess
938
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StopOTelEnrichmentResponseSuccess
939
+
907
940
  interface _TagResourceResponseSuccess
908
941
  include ::Seahorse::Client::_ResponseSuccess[Types::TagResourceOutput]
909
942
  end
data/sig/metric.rbs CHANGED
@@ -72,10 +72,10 @@ module Aws
72
72
  ],
73
73
  ?period: ::Integer,
74
74
  ?unit: ("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"),
75
- evaluation_periods: ::Integer,
75
+ ?evaluation_periods: ::Integer,
76
76
  ?datapoints_to_alarm: ::Integer,
77
77
  ?threshold: ::Float,
78
- comparison_operator: ("GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold" | "LessThanLowerOrGreaterThanUpperThreshold" | "LessThanLowerThreshold" | "GreaterThanUpperThreshold"),
78
+ ?comparison_operator: ("GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold" | "LessThanLowerOrGreaterThanUpperThreshold" | "LessThanLowerThreshold" | "GreaterThanUpperThreshold"),
79
79
  ?treat_missing_data: ::String,
80
80
  ?evaluate_low_sample_count_percentile: ::String,
81
81
  ?metrics: Array[
@@ -109,7 +109,15 @@ module Aws
109
109
  value: ::String
110
110
  },
111
111
  ],
112
- ?threshold_metric_id: ::String
112
+ ?threshold_metric_id: ::String,
113
+ ?evaluation_criteria: {
114
+ prom_ql_criteria: {
115
+ query: ::String,
116
+ pending_period: ::Integer?,
117
+ recovery_period: ::Integer?
118
+ }?
119
+ },
120
+ ?evaluation_interval: ::Integer
113
121
  ) -> Alarm
114
122
  | (?Hash[Symbol, untyped]) -> Alarm
115
123
 
data/sig/types.rbs CHANGED
@@ -37,6 +37,13 @@ module Aws::CloudWatch
37
37
  SENSITIVE: []
38
38
  end
39
39
 
40
+ class AlarmPromQLCriteria
41
+ attr_accessor query: ::String
42
+ attr_accessor pending_period: ::Integer
43
+ attr_accessor recovery_period: ::Integer
44
+ SENSITIVE: []
45
+ end
46
+
40
47
  class AnomalyDetector
41
48
  attr_accessor namespace: ::String
42
49
  attr_accessor metric_name: ::String
@@ -322,6 +329,17 @@ module Aws::CloudWatch
322
329
  SENSITIVE: []
323
330
  end
324
331
 
332
+ class EvaluationCriteria
333
+ attr_accessor prom_ql_criteria: Types::AlarmPromQLCriteria
334
+ attr_accessor unknown: untyped
335
+ SENSITIVE: []
336
+
337
+ class PromQlCriteria < EvaluationCriteria
338
+ end
339
+ class Unknown < EvaluationCriteria
340
+ end
341
+ end
342
+
325
343
  class GetAlarmMuteRuleInput
326
344
  attr_accessor alarm_mute_rule_name: ::String
327
345
  SENSITIVE: []
@@ -443,6 +461,14 @@ module Aws::CloudWatch
443
461
  SENSITIVE: []
444
462
  end
445
463
 
464
+ class GetOTelEnrichmentInput < Aws::EmptyStructure
465
+ end
466
+
467
+ class GetOTelEnrichmentOutput
468
+ attr_accessor status: ("Running" | "Stopped")
469
+ SENSITIVE: []
470
+ end
471
+
446
472
  class InsightRule
447
473
  attr_accessor name: ::String
448
474
  attr_accessor state: ::String
@@ -658,6 +684,8 @@ module Aws::CloudWatch
658
684
  attr_accessor threshold_metric_id: ::String
659
685
  attr_accessor evaluation_state: ("PARTIAL_DATA" | "EVALUATION_FAILURE" | "EVALUATION_ERROR")
660
686
  attr_accessor state_transitioned_timestamp: ::Time
687
+ attr_accessor evaluation_criteria: Types::EvaluationCriteria
688
+ attr_accessor evaluation_interval: ::Integer
661
689
  SENSITIVE: []
662
690
  end
663
691
 
@@ -857,6 +885,8 @@ module Aws::CloudWatch
857
885
  attr_accessor metrics: ::Array[Types::MetricDataQuery]
858
886
  attr_accessor tags: ::Array[Types::Tag]
859
887
  attr_accessor threshold_metric_id: ::String
888
+ attr_accessor evaluation_criteria: Types::EvaluationCriteria
889
+ attr_accessor evaluation_interval: ::Integer
860
890
  SENSITIVE: []
861
891
  end
862
892
 
@@ -940,6 +970,12 @@ module Aws::CloudWatch
940
970
  class StartMetricStreamsOutput < Aws::EmptyStructure
941
971
  end
942
972
 
973
+ class StartOTelEnrichmentInput < Aws::EmptyStructure
974
+ end
975
+
976
+ class StartOTelEnrichmentOutput < Aws::EmptyStructure
977
+ end
978
+
943
979
  class StatisticSet
944
980
  attr_accessor sample_count: ::Float
945
981
  attr_accessor sum: ::Float
@@ -956,6 +992,12 @@ module Aws::CloudWatch
956
992
  class StopMetricStreamsOutput < Aws::EmptyStructure
957
993
  end
958
994
 
995
+ class StopOTelEnrichmentInput < Aws::EmptyStructure
996
+ end
997
+
998
+ class StopOTelEnrichmentOutput < Aws::EmptyStructure
999
+ end
1000
+
959
1001
  class Tag
960
1002
  attr_accessor key: ::String
961
1003
  attr_accessor value: ::String
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cloudwatch
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.132.0
4
+ version: 1.133.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services