aws-sdk-cloudwatch 1.132.0 → 1.134.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: dc414d2f1107d06392f609635337bfd927cb9cb47ea7ee1471372cd2bd8a7ce7
4
+ data.tar.gz: faf6cc6baa9feebdf153a050fc250589aa808738456ef89e79ff96bbd8fee8b3
5
5
  SHA512:
6
- metadata.gz: fec3ac2f5517bdf365bd646c6add783f05d046ff0d48acdb0706d1fff9317c4c4c6280135d04c9faf0379f08b7435b45a8f74c8b385ee20b1a9ba79ce8738a17
7
- data.tar.gz: '0093db360ab7eefa97d9d6ae9bff45a016d92db32bf23e9034b8163b66b5e3cadf54a5a10c8bed441b3368bf432dcb8b9843d07a2e04bd9f6510bd7497600a81'
6
+ metadata.gz: 9aca21bf1ba006843216321b5f1ebb3880d1c26baa3d2be2ba0ff6566db5c152b4949d63e9073879af4cf1a08b54454ccab99b38899b09616238f8501cbd5529
7
+ data.tar.gz: 4f63802d4c3ddf4fa9faa5866360cfde34151b6606ca4bd7f0a01e3d7b917cccd47d8e398ab4b888869c84a1ef32bc1d745f1c665305c5dead212bc53abbe013
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.134.0 (2026-04-16)
5
+ ------------------
6
+
7
+ * Feature - Update documentation of alarm mute rules start and end date fields
8
+
9
+ 1.133.0 (2026-04-02)
10
+ ------------------
11
+
12
+ * 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.
13
+
4
14
  1.132.0 (2026-03-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.132.0
1
+ 1.134.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`).
@@ -2790,18 +2825,16 @@ module Aws::CloudWatch
2790
2825
  # can use tags to categorize and manage your mute rules.
2791
2826
  #
2792
2827
  # @option params [Time,DateTime,Date,Integer,String] :start_date
2793
- # The date and time after which the mute rule takes effect. If not
2794
- # specified, the mute rule takes effect immediately upon creation and
2795
- # the mutes are applied as per the schedule expression. This date and
2796
- # time is interpreted according to the schedule timezone, or UTC if no
2797
- # timezone is specified.
2828
+ # The date and time after which the mute rule takes effect, specified as
2829
+ # a timestamp in ISO 8601 format (for example, `2026-04-15T08:00:00Z`).
2830
+ # If not specified, the mute rule takes effect immediately upon creation
2831
+ # and the mutes are applied as per the schedule expression.
2798
2832
  #
2799
2833
  # @option params [Time,DateTime,Date,Integer,String] :expire_date
2800
2834
  # The date and time when the mute rule expires and is no longer
2801
- # evaluated. After this time, the rule status becomes EXPIRED and will
2802
- # no longer mute the targeted alarms. This date and time is interpreted
2803
- # according to the schedule timezone, or UTC if no timezone is
2804
- # specified.
2835
+ # evaluated, specified as a timestamp in ISO 8601 format (for example,
2836
+ # `2026-12-31T23:59:59Z`). After this time, the rule status becomes
2837
+ # EXPIRED and will no longer mute the targeted alarms.
2805
2838
  #
2806
2839
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2807
2840
  #
@@ -3494,18 +3527,19 @@ module Aws::CloudWatch
3494
3527
  end
3495
3528
 
3496
3529
  # 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].
3530
+ # metric, metric math expression, anomaly detection model, Metrics
3531
+ # Insights query, or PromQL query. For more information about using a
3532
+ # Metrics Insights query for an alarm, see [Create alarms on Metrics
3533
+ # Insights queries][1].
3501
3534
  #
3502
3535
  # Alarms based on anomaly detection models cannot have Auto Scaling
3503
3536
  # actions.
3504
3537
  #
3505
3538
  # 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.
3539
+ # set to `INSUFFICIENT_DATA`. For PromQL alarms, the alarm state is
3540
+ # instead immediately set to `OK`. The alarm is then evaluated and its
3541
+ # state is set appropriately. Any actions associated with the new state
3542
+ # are then executed.
3509
3543
  #
3510
3544
  # When you update an existing alarm, its state is left unchanged, but
3511
3545
  # the update completely overwrites the previous configuration of the
@@ -3746,8 +3780,8 @@ module Aws::CloudWatch
3746
3780
  #
3747
3781
  # @option params [String] :metric_name
3748
3782
  # The name for the metric associated with the alarm. For each
3749
- # `PutMetricAlarm` operation, you must specify either `MetricName` or a
3750
- # `Metrics` array.
3783
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
3784
+ # `Metrics` array, or an `EvaluationCriteria`.
3751
3785
  #
3752
3786
  # If you are creating an alarm based on a math expression, you cannot
3753
3787
  # specify this parameter, or any of the `Namespace`, `Dimensions`,
@@ -3856,7 +3890,7 @@ module Aws::CloudWatch
3856
3890
  # an incorrect unit that is not published for this metric. Doing so
3857
3891
  # causes the alarm to be stuck in the `INSUFFICIENT DATA` state.
3858
3892
  #
3859
- # @option params [required, Integer] :evaluation_periods
3893
+ # @option params [Integer] :evaluation_periods
3860
3894
  # The number of periods over which data is compared to the specified
3861
3895
  # threshold. If you are setting an alarm that requires that a number of
3862
3896
  # consecutive data points be breaching to trigger the alarm, this value
@@ -3879,7 +3913,7 @@ module Aws::CloudWatch
3879
3913
  # This parameter is required for alarms based on static thresholds, but
3880
3914
  # should not be used for alarms based on anomaly detection models.
3881
3915
  #
3882
- # @option params [required, String] :comparison_operator
3916
+ # @option params [String] :comparison_operator
3883
3917
  # The arithmetic operation to use when comparing the specified statistic
3884
3918
  # and threshold. The specified statistic value is used as the first
3885
3919
  # operand.
@@ -3903,6 +3937,10 @@ module Aws::CloudWatch
3903
3937
  #
3904
3938
  # </note>
3905
3939
  #
3940
+ # <note markdown="1"> This parameter is not applicable to PromQL alarms.
3941
+ #
3942
+ # </note>
3943
+ #
3906
3944
  #
3907
3945
  #
3908
3946
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data
@@ -3925,8 +3963,8 @@ module Aws::CloudWatch
3925
3963
  # @option params [Array<Types::MetricDataQuery>] :metrics
3926
3964
  # An array of `MetricDataQuery` structures that enable you to create an
3927
3965
  # 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.
3966
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
3967
+ # `Metrics` array, or an `EvaluationCriteria`.
3930
3968
  #
3931
3969
  # Each item in the `Metrics` array either retrieves a metric or performs
3932
3970
  # a math expression.
@@ -3979,6 +4017,30 @@ module Aws::CloudWatch
3979
4017
  # If your alarm uses this parameter, it cannot have Auto Scaling
3980
4018
  # actions.
3981
4019
  #
4020
+ # @option params [Types::EvaluationCriteria] :evaluation_criteria
4021
+ # The evaluation criteria for the alarm. For each `PutMetricAlarm`
4022
+ # operation, you must specify either `MetricName`, a `Metrics` array, or
4023
+ # an `EvaluationCriteria`.
4024
+ #
4025
+ # If you use the `EvaluationCriteria` parameter, you cannot include the
4026
+ # `Namespace`, `MetricName`, `Dimensions`, `Period`, `Unit`,
4027
+ # `Statistic`, `ExtendedStatistic`, `Metrics`, `Threshold`,
4028
+ # `ComparisonOperator`, `ThresholdMetricId`, `EvaluationPeriods`, or
4029
+ # `DatapointsToAlarm` parameters of `PutMetricAlarm` in the same
4030
+ # operation. Instead, all evaluation parameters are defined within this
4031
+ # structure.
4032
+ #
4033
+ # For an example of how to use this parameter, see the **PromQL alarm**
4034
+ # example on this page.
4035
+ #
4036
+ # @option params [Integer] :evaluation_interval
4037
+ # The frequency, in seconds, at which the alarm is evaluated. Valid
4038
+ # values are 10, 20, 30, and any multiple of 60.
4039
+ #
4040
+ # This parameter is required for alarms that use `EvaluationCriteria`,
4041
+ # and cannot be specified for alarms configured with `MetricName` or
4042
+ # `Metrics`.
4043
+ #
3982
4044
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3983
4045
  #
3984
4046
  # @example Request syntax with placeholder values
@@ -4002,10 +4064,10 @@ module Aws::CloudWatch
4002
4064
  # ],
4003
4065
  # period: 1,
4004
4066
  # 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
4067
+ # evaluation_periods: 1,
4006
4068
  # datapoints_to_alarm: 1,
4007
4069
  # threshold: 1.0,
4008
- # comparison_operator: "GreaterThanOrEqualToThreshold", # required, accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold, LessThanLowerOrGreaterThanUpperThreshold, LessThanLowerThreshold, GreaterThanUpperThreshold
4070
+ # comparison_operator: "GreaterThanOrEqualToThreshold", # accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold, LessThanLowerOrGreaterThanUpperThreshold, LessThanLowerThreshold, GreaterThanUpperThreshold
4009
4071
  # treat_missing_data: "TreatMissingData",
4010
4072
  # evaluate_low_sample_count_percentile: "EvaluateLowSampleCountPercentile",
4011
4073
  # metrics: [
@@ -4040,6 +4102,14 @@ module Aws::CloudWatch
4040
4102
  # },
4041
4103
  # ],
4042
4104
  # threshold_metric_id: "MetricId",
4105
+ # evaluation_criteria: {
4106
+ # prom_ql_criteria: {
4107
+ # query: "Query", # required
4108
+ # pending_period: 1,
4109
+ # recovery_period: 1,
4110
+ # },
4111
+ # },
4112
+ # evaluation_interval: 1,
4043
4113
  # })
4044
4114
  #
4045
4115
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/PutMetricAlarm AWS API Documentation
@@ -4539,6 +4609,33 @@ module Aws::CloudWatch
4539
4609
  req.send_request(options)
4540
4610
  end
4541
4611
 
4612
+ # Enables enrichment and PromQL access for CloudWatch vended metrics for
4613
+ # [supported AWS resources][1] in the account. Once enabled, metrics
4614
+ # that contain a resource identifier dimension (for example, EC2
4615
+ # `CPUUtilization` with an `InstanceId` dimension) are enriched with
4616
+ # resource ARN and resource tag labels and become queryable using
4617
+ # PromQL.
4618
+ #
4619
+ # Before calling this operation, you must enable resource tags on
4620
+ # telemetry for your account. For more information, see [Enable resource
4621
+ # tags on telemetry][2].
4622
+ #
4623
+ #
4624
+ #
4625
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingResourceTagsForTelemetry.html
4626
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/EnableResourceTagsOnTelemetry.html
4627
+ #
4628
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4629
+ #
4630
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StartOTelEnrichment AWS API Documentation
4631
+ #
4632
+ # @overload start_o_tel_enrichment(params = {})
4633
+ # @param [Hash] params ({})
4634
+ def start_o_tel_enrichment(params = {}, options = {})
4635
+ req = build_request(:start_o_tel_enrichment, params)
4636
+ req.send_request(options)
4637
+ end
4638
+
4542
4639
  # Stops the streaming of metrics for one or more of your metric streams.
4543
4640
  #
4544
4641
  # @option params [required, Array<String>] :names
@@ -4565,6 +4662,26 @@ module Aws::CloudWatch
4565
4662
  req.send_request(options)
4566
4663
  end
4567
4664
 
4665
+ # Disables enrichment and PromQL access for CloudWatch vended metrics
4666
+ # for [supported AWS resources][1] in the account. After disabling,
4667
+ # these metrics are no longer enriched with resource ARN and resource
4668
+ # tag labels, and cannot be queried using PromQL.
4669
+ #
4670
+ #
4671
+ #
4672
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingResourceTagsForTelemetry.html
4673
+ #
4674
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4675
+ #
4676
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StopOTelEnrichment AWS API Documentation
4677
+ #
4678
+ # @overload stop_o_tel_enrichment(params = {})
4679
+ # @param [Hash] params ({})
4680
+ def stop_o_tel_enrichment(params = {}, options = {})
4681
+ req = build_request(:stop_o_tel_enrichment, params)
4682
+ req.send_request(options)
4683
+ end
4684
+
4568
4685
  # Assigns one or more tags (key-value pairs) to the specified CloudWatch
4569
4686
  # resource. Currently, the only CloudWatch resources that can be tagged
4570
4687
  # are alarms and Contributor Insights rules.
@@ -4683,7 +4800,7 @@ module Aws::CloudWatch
4683
4800
  tracer: tracer
4684
4801
  )
4685
4802
  context[:gem_name] = 'aws-sdk-cloudwatch'
4686
- context[:gem_version] = '1.132.0'
4803
+ context[:gem_version] = '1.134.0'
4687
4804
  Seahorse::Client::Request.new(handlers, context)
4688
4805
  end
4689
4806
 
@@ -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
@@ -3597,19 +3685,18 @@ module Aws::CloudWatch
3597
3685
  # @return [Array<Types::Tag>]
3598
3686
  #
3599
3687
  # @!attribute [rw] start_date
3600
- # The date and time after which the mute rule takes effect. If not
3601
- # specified, the mute rule takes effect immediately upon creation and
3602
- # the mutes are applied as per the schedule expression. This date and
3603
- # time is interpreted according to the schedule timezone, or UTC if no
3604
- # timezone is specified.
3688
+ # The date and time after which the mute rule takes effect, specified
3689
+ # as a timestamp in ISO 8601 format (for example,
3690
+ # `2026-04-15T08:00:00Z`). If not specified, the mute rule takes
3691
+ # effect immediately upon creation and the mutes are applied as per
3692
+ # the schedule expression.
3605
3693
  # @return [Time]
3606
3694
  #
3607
3695
  # @!attribute [rw] expire_date
3608
3696
  # The date and time when the mute rule expires and is no longer
3609
- # evaluated. After this time, the rule status becomes EXPIRED and will
3610
- # no longer mute the targeted alarms. This date and time is
3611
- # interpreted according to the schedule timezone, or UTC if no
3612
- # timezone is specified.
3697
+ # evaluated, specified as a timestamp in ISO 8601 format (for example,
3698
+ # `2026-12-31T23:59:59Z`). After this time, the rule status becomes
3699
+ # EXPIRED and will no longer mute the targeted alarms.
3613
3700
  # @return [Time]
3614
3701
  #
3615
3702
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/PutAlarmMuteRuleInput AWS API Documentation
@@ -4289,8 +4376,8 @@ module Aws::CloudWatch
4289
4376
  #
4290
4377
  # @!attribute [rw] metric_name
4291
4378
  # The name for the metric associated with the alarm. For each
4292
- # `PutMetricAlarm` operation, you must specify either `MetricName` or
4293
- # a `Metrics` array.
4379
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
4380
+ # `Metrics` array, or an `EvaluationCriteria`.
4294
4381
  #
4295
4382
  # If you are creating an alarm based on a math expression, you cannot
4296
4383
  # specify this parameter, or any of the `Namespace`, `Dimensions`,
@@ -4460,6 +4547,10 @@ module Aws::CloudWatch
4460
4547
  #
4461
4548
  # </note>
4462
4549
  #
4550
+ # <note markdown="1"> This parameter is not applicable to PromQL alarms.
4551
+ #
4552
+ # </note>
4553
+ #
4463
4554
  #
4464
4555
  #
4465
4556
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-missing-data
@@ -4484,8 +4575,8 @@ module Aws::CloudWatch
4484
4575
  # @!attribute [rw] metrics
4485
4576
  # An array of `MetricDataQuery` structures that enable you to create
4486
4577
  # 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.
4578
+ # `PutMetricAlarm` operation, you must specify either `MetricName`, a
4579
+ # `Metrics` array, or an `EvaluationCriteria`.
4489
4580
  #
4490
4581
  # Each item in the `Metrics` array either retrieves a metric or
4491
4582
  # performs a math expression.
@@ -4542,6 +4633,32 @@ module Aws::CloudWatch
4542
4633
  # actions.
4543
4634
  # @return [String]
4544
4635
  #
4636
+ # @!attribute [rw] evaluation_criteria
4637
+ # The evaluation criteria for the alarm. For each `PutMetricAlarm`
4638
+ # operation, you must specify either `MetricName`, a `Metrics` array,
4639
+ # or an `EvaluationCriteria`.
4640
+ #
4641
+ # If you use the `EvaluationCriteria` parameter, you cannot include
4642
+ # the `Namespace`, `MetricName`, `Dimensions`, `Period`, `Unit`,
4643
+ # `Statistic`, `ExtendedStatistic`, `Metrics`, `Threshold`,
4644
+ # `ComparisonOperator`, `ThresholdMetricId`, `EvaluationPeriods`, or
4645
+ # `DatapointsToAlarm` parameters of `PutMetricAlarm` in the same
4646
+ # operation. Instead, all evaluation parameters are defined within
4647
+ # this structure.
4648
+ #
4649
+ # For an example of how to use this parameter, see the **PromQL
4650
+ # alarm** example on this page.
4651
+ # @return [Types::EvaluationCriteria]
4652
+ #
4653
+ # @!attribute [rw] evaluation_interval
4654
+ # The frequency, in seconds, at which the alarm is evaluated. Valid
4655
+ # values are 10, 20, 30, and any multiple of 60.
4656
+ #
4657
+ # This parameter is required for alarms that use `EvaluationCriteria`,
4658
+ # and cannot be specified for alarms configured with `MetricName` or
4659
+ # `Metrics`.
4660
+ # @return [Integer]
4661
+ #
4545
4662
  # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/PutMetricAlarmInput AWS API Documentation
4546
4663
  #
4547
4664
  class PutMetricAlarmInput < Struct.new(
@@ -4566,7 +4683,9 @@ module Aws::CloudWatch
4566
4683
  :evaluate_low_sample_count_percentile,
4567
4684
  :metrics,
4568
4685
  :tags,
4569
- :threshold_metric_id)
4686
+ :threshold_metric_id,
4687
+ :evaluation_criteria,
4688
+ :evaluation_interval)
4570
4689
  SENSITIVE = []
4571
4690
  include Aws::Structure
4572
4691
  end
@@ -5057,6 +5176,16 @@ module Aws::CloudWatch
5057
5176
  #
5058
5177
  class StartMetricStreamsOutput < Aws::EmptyStructure; end
5059
5178
 
5179
+ # @api private
5180
+ #
5181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StartOTelEnrichmentInput AWS API Documentation
5182
+ #
5183
+ class StartOTelEnrichmentInput < Aws::EmptyStructure; end
5184
+
5185
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StartOTelEnrichmentOutput AWS API Documentation
5186
+ #
5187
+ class StartOTelEnrichmentOutput < Aws::EmptyStructure; end
5188
+
5060
5189
  # Represents a set of statistics that describes a specific metric.
5061
5190
  #
5062
5191
  # @!attribute [rw] sample_count
@@ -5107,6 +5236,16 @@ module Aws::CloudWatch
5107
5236
  #
5108
5237
  class StopMetricStreamsOutput < Aws::EmptyStructure; end
5109
5238
 
5239
+ # @api private
5240
+ #
5241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StopOTelEnrichmentInput AWS API Documentation
5242
+ #
5243
+ class StopOTelEnrichmentInput < Aws::EmptyStructure; end
5244
+
5245
+ # @see http://docs.aws.amazon.com/goto/WebAPI/monitoring-2010-08-01/StopOTelEnrichmentOutput AWS API Documentation
5246
+ #
5247
+ class StopOTelEnrichmentOutput < Aws::EmptyStructure; end
5248
+
5110
5249
  # A key-value pair associated with a CloudWatch resource.
5111
5250
  #
5112
5251
  # @!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.134.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.134.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services